crazyowen 发表于 2015-11-1 12:08:13

请问,正则取【】 符号之间的内容怎样写

本帖最后由 crazyowen 于 2015-11-1 12:20 编辑

$s = "地址xx附近 [:05辣椒炒肉.1份:01香干炒肉.1份:03芹菜炒肉.1份]总计:36.00元"
我想把所有菜和对应的数量 分别提取出来,应该怎样写?

afan 发表于 2015-11-1 12:43:12

#include <Array.au3>
Local $Str = '地址xx附近 [:05辣椒炒肉.1份:01香干炒肉.1份:03芹菜炒肉.1份]总计:36.00元'
Local $aSR = StringRegExp($str, ':(\d+[^\x00-\xff]+)\.(\d+份)', 3)
_ArrayDisplay($aSR, UBound($aSR))

wlb 发表于 2015-11-1 14:00:26

{:face (396):}仰望

crazyowen 发表于 2015-11-1 17:35:54

回复 2# afan

很好用!万分感谢!

heroxianf 发表于 2015-11-1 21:12:00

回复 2# afan

A大,为什么字符“:”、“.”就被匹配掉了呢?

afan 发表于 2015-11-1 22:15:04

回复 5# heroxianf


    因为它们都不在捕捉的()组里面,匹配的是()里面的内容

heroxianf 发表于 2015-11-1 22:53:13

回复 6# afan

谢谢你的帮助,大概了解了一点。继续学习

kk_lee69 发表于 2015-11-2 17:56:03

回复 1# crazyowen

既然很好用 別忘了版規已解決的 請修改 標題 加上[已解決]

lxwlxwayy 发表于 2015-11-5 14:52:26

邦你顶{:face (394):}

mshuking 发表于 2015-11-11 02:15:51

学习下.....
页: [1]
查看完整版本: 请问,正则取【】 符号之间的内容怎样写