此问题被问到here,但我不希望使用python特定的解决方案。它应该可以在JavaScript和任何其他主流语言中工作。它必须是一个正则表达式。
假设分隔符是“ !
”
下表显示了一些示例输入的期望行为
+------------------------+--------+
| INPUT | OUTPUT |
+------------------------+--------+
| "aaaa!bbbb" | "aaaa" |
| "aaaa" | "aaaa" |
| "aaaa!bbbb!ccccc!dddd" | "aaaa" |
| "aaaa!" | "aaaa" |
| "!aaaaa" | "" |
+------------------------+--------+
我尝试以下操作均无济于事:
“ ^[^!]*$(!)
”
您最后不需要(!)
。只需使用^([^!]*)
。
import re
text = """
aaaa!bbbb
aaaa
aaaa!bbbb!ccccc!dddd
aaaa!
!aaaaa
"""
print re.findall(r'^[^!]*', text, re.MULTILINE)