如何在两个规则匹配之间匹配文本

时间:2014-11-06 15:08:21

标签: regex

我需要在匹配规则之后将所有文本一直返回到下一个换行符。

到目前为止我有这个在比赛结束后得到的所有内容,但我只想要史密斯

这个词
(?<=name=sn\nuserdetails.attribute.value=).*

以下是字符串的一部分:

== \ nuserdetails.attribute.name = SN \ nuserdetails.attribute.value =史密斯\ nuserdetails.attribute.name = CN \ nuserdetails.attribute.value

任何人都知道怎么做?

4 个答案:

答案 0 :(得分:1)

(?<=name=sn\\nuserdetails\.attribute\.value=)[^\\n]+

试试这个。看看演示。

http://regex101.com/r/aM5oU3/8

(?<=name=sn\\nuserdetails\.attribute\.value=)(?:(?!\\n).)+

参见演示。

http://regex101.com/r/aM5oU3/7

答案 1 :(得分:1)

您需要使用此\n模式来匹配换行符而不是\\n

(?<=name=sn\nuserdetails\.attribute\.value=).*

答案 2 :(得分:1)

假设您有个字符 \n

(?<=name=sn\\nuserdetails.attribute.value=)(.*?)\\n

http://regex101.com/r/zB0eL1/1

答案 3 :(得分:0)

怎么样

(?<=name=sn\\nuserdetails.attribute.value=)[^\\]*\\n

或者

(?<=name=sn\\nuserdetails.attribute.value=)[^\\]*

参见示例http://regex101.com/r/dT9rH3/1