我有一个字符串,如下所示
String1 = aaaa
String2 = bbbb
String4 = cccc
String5 = "
abcd;
bcda
cdas"
String6 = dddd
我需要在"="
之后提取字符串
在字符串5中,我需要在双引号" "
之间提取字符串
我能够使用substring和indexof实现这一点。
我怎样才能在Perl正则表达式中实现这一目标?
答案 0 :(得分:1)
RegEx:/^[a-zA-Z0-9]+\s*=\s*([^"']+?$|"[^"]+|'[^']+)/gm
这也用单引号和双引号以及简单值来处理这两种情况。
要匹配的文字:
String1 = aaaa
String2 = bbbb
String4 = cccc
String5 = "
abcd;
bcda
cdas"
String6 = dddd
String7 = '
abcd;
bcda
cdas'
匹配:
MATCH 1 `aaaa`
MATCH 2 `bbbb`
MATCH 3 `cccc`
MATCH 4 `" ↵ abcd;↵ bcda↵ cdas`
MATCH 5 `dddd`
MATCH 6 `' ↵ abcd;↵ bcda↵ cdas`