我有这样的文本:
OLD>> AAAAAA AAA - bb dsgsdg adgsdg adgsdg adgsdg GGGGGG GG sdgds AAAA GF-S sdg。西班牙。- 4353 ds ggs ggs ggs 343 33sdg sdgs ggs DGSAGG DSDG g
new text
AAAAAA AAA - bb dsssdg adsdg adsdg adsdg adsdg adsdg adsdg adsdg adsdg GGGGGG GG sdgds AAAA GF-S sdg。Asdg。AA sdgdsg - 4353 ds sdgdsgg343 33sdgdsgsagg dsdgsdg我想提取大写字符串(如
([A-Z -]+){5,100}
)在数字前的最后一次出现:4353
所以在这种情况下,结果应该是:
AAAA GF-S
我试过/([A-Z -.]+){5,100} (.+) 4353/i
,但它给了我第一个。
谢谢你的快速回答,我在搜索文本中做了修改。它应该是最后一个只有大写且长度大于5的表达式
更新
试试这个:
.*('b[A-Z][A-Z -.]{5,100})(?=.*4353)'K
现场演示
你可以使用这个正则表达式:
([A-Z][A-Z .-]{5,100})(?= [a-z .-]*4353)
<<h3> RegEx演示/h3>