想象一下,我在这样的列表中有多个字符串:
[[1]]
[1] "1-FA-1-I2-1-I2-1-I2-1-EX-1-I2-1-I3-1-FA-1-"
[2] "-1-I2-1-TR-1-"
[3] "-1-I2-1-FA-1-I3-1-"
[4] "-1-FA-1-FA-1-NR-1-I3-1-I2-1-TR-1-"
[5] "-1-I2-1-"
[6] "-1-I2-1-FA-1-I2-1-"
[7] "-1-I3-1-FA-1-QU-1-"
[8] "-1-I2-1-I2-1-I2-1-NR-1-I2-1-I2-1-NR-1-"
[9] "-1-I2-1-"
[10] "-1-NR-1-I3-1-QU-1-I2-1-I3-1-QU-1-NR-1-I2-1-"
[11] "-1-NR-1-QU-1-QU-1-I2-1-"
我想使用正则表达式来检测特定字符串,其中某个子字符串在另一个子字符串之前,但不一定直接在另一个子字符串之前。
例如,假设我们正在寻找FA
前面的EX
. 这需要1
在列表中匹配。即使FA
has-1-I2-1-I2-1-I2-1-
在其自身和 之间EX
,FA
仍然出现在 之前EX
,因此预期匹配。
如何定义一个通用的正则表达式,以这种方式识别某些子字符串出现在另一个子字符串之前的字符串?