Regex 如果使用正则表达式存在第三个单词,如何在两个单词之间获得多个输出?
String=Regex 如果使用正则表达式存在第三个单词,如何在两个单词之间获得多个输出?,regex,Regex,String=I由于您希望在两个字符串之间获得一个子字符串,而不是在两个字符串之间有第三个子字符串,因此您唯一的单通正则表达式解决方案是使用一个。见: 何时使用此技术 假设我们的老板现在告诉我们,我们仍然希望匹配并包括{END},但是我们还需要避免跨过{MID}部分(如果存在)。从懒点星型版本开始,确保我们匹配到{END}分隔符,然后我们可以调整点以确保它不会滚动{MID}: {START}(?(?!{MID})。*?{END} /( 请注意,我保留了完整的捕获组,只保留您需要的组 图案细节:
I由于您希望在两个字符串之间获得一个子字符串,而不是在两个字符串之间有第三个子字符串,因此您唯一的单通正则表达式解决方案是使用一个。见:
何时使用此技术
假设我们的老板现在告诉我们,我们仍然希望匹配并包括{END}
,但是我们还需要避免跨过{MID}
部分(如果存在)。从懒点星型版本开始,确保我们匹配到{END}
分隔符,然后我们可以调整点以确保它不会滚动{MID}
:
{START}(?(?!{MID})。*?{END}
/(
请注意,我保留了完整的捕获组,只保留您需要的组
图案细节:
<>代码>(代码是)>(是的,正确的,上面的正则表达式是匹配<代码> @ USE75 3642。谢谢。我已经改变了问题。你能删除复制标签吗?很高兴它对你有用。如果我的答案对你有帮助,请考虑一下投票席。
<am a insta good </boy>
<am a insta bad </boy>
/(<am)((?:(?!<am|<\/boy>|insta).)*insta.*?)(<\/boy>)/g