Integromat 中的正则表达式
Regex in Integromat
我在 Integromat.
的 Textparser 模块中得到一个带有以下正则表达式的 'infinite loop' ]
(?<=\n)(.*)(?=\nA|B)
我知道这是由于 | 造成的,但不确定 Integromat 中的其他选项。
试试这样的模式
(?m)^(.+?)(?:\r?\nA|B)
解释
m modifier: multi line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)
^ asserts position at start of a line
1st Capturing Group (.+?)
. matches any character (except for line terminators)
+? matches the previous token between one and unlimited times, as few times as possible, expanding as needed (lazy)
Non-capturing group (?:\r?\nA|B)
1st Alternative \r?\nA
\r matches a carriage return (ASCII 13)
? matches the previous token between zero and one times, as many times as
possible, giving back as needed (greedy)
\n matches a line-feed (newline) character (ASCII 10)
A matches the character A with index 6510 (4116 or 1018) literally (case sensitive)
2nd Alternative B
B matches the character B with index 6610 (4216 or 1028) literally (case sensitive)
我在 Integromat.
的 Textparser 模块中得到一个带有以下正则表达式的 'infinite loop' ](?<=\n)(.*)(?=\nA|B)
我知道这是由于 | 造成的,但不确定 Integromat 中的其他选项。
试试这样的模式
(?m)^(.+?)(?:\r?\nA|B)
解释
m modifier: multi line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)
^ asserts position at start of a line
1st Capturing Group (.+?)
. matches any character (except for line terminators)
+? matches the previous token between one and unlimited times, as few times as possible, expanding as needed (lazy)
Non-capturing group (?:\r?\nA|B)
1st Alternative \r?\nA
\r matches a carriage return (ASCII 13)
? matches the previous token between zero and one times, as many times as
possible, giving back as needed (greedy)
\n matches a line-feed (newline) character (ASCII 10)
A matches the character A with index 6510 (4116 or 1018) literally (case sensitive)
2nd Alternative B
B matches the character B with index 6610 (4216 or 1028) literally (case sensitive)