我有一个长字符串,例如:
sometext〜ZA÷sometext1〜textsome1〜文本〜ZA÷sometext2〜textsome3〜文本〜.......
我想要一个数组字符串:
我尝试了模式:ZA÷(。*?)〜
它只匹配ZA÷sometext~,我错过了结果。 任何人帮我解决我的问题。我对正则表达式了解不多!
编辑: 那个字符串只是一个例子。它可能是:
ZA÷ACDK¬ZEE÷EcZwBi3N¬ZB÷1¬ZY÷Africa¬ZC÷nyyrdizT¬ZD÷p¬ZE÷QDSLZVAl¬ZF÷0¬ZO÷0¬ZG÷1¬ZH÷1_EcZwBi3N ¬ZJ÷2¬Z大号÷/legue¬ZX÷00Africa ...... 006Africa00100 00000002000CAF Champion020League000¬〜AA÷÷j3xCaVI8¬AD÷1471966200¬AB÷1¬CR÷1¬AC÷1¬CX÷Enyimba¬AX0¬BX÷÷-1¬WM÷ENY¬AEEnyimba¬WU ÷enyimba-intern ational -WN÷MAMAFF÷Ma melodi Sundowns -WV÷mamelodi-sundownsANAN÷yMW÷16 | 4 .........
这是一个复杂的字符串,规则
答案 0 :(得分:1)
只需将您的模式更改为:
"ZA÷(.*?)~(.*?)~(.*?)~"
答案 1 :(得分:0)
您可以尝试以下模式
(ZA÷.*?)ZA÷
编辑字符串是一个示例,但它没有重复ZA÷
,因此无法正确测试。但我相信如果它符合上面显示的模式,这对你有用。
修改强>
获得完整字符串后,这似乎正常工作
.+?(?=ZA÷)
.+?
匹配任何字符(换行符除外)
量词:
+?
在一次和无限次之间,尽可能少地根据需要进行扩展[懒惰]
(?=ZA÷)
肯定前瞻 - 断言下面的正则表达式可以匹配
答案 2 :(得分:0)
我的朋友给出了这种模式:( ZA÷((?!ZA÷)。)*),它运作良好。感谢大家的帮助! :d