我正在用文字分割文件。我可以将其拆分为单词,但是在某些单词中有一个特殊字符,例如“ ___”。我想跳过该特殊字符,并且还要将该单词与该特殊字符分开。
包含此类数据的文件
Yahoo$$$Yahoo OK : ___GET
Gmail$$$Gmail Ok:___GET
google_data$$$Google.com.in___POST
使用((?!:)[。0-9a-zA-Z \ s] \ w +)+给我
Yahoo
Yahoo OK
___GET
Gmail
Gmail Ok
GET
google_data
Google.com.in___POST
我不要那个'___'和下面的字符串:
Google.com.in___POST
必须分为两个词,例如:
Google.com.in
POST
有人可以帮我吗?
答案 0 :(得分:1)
使用\w
也会与下划线匹配。查看示例数据,您想要匹配字符a-z或数字,并且在两者之间可以有空格,点或下划线。
您可以匹配以下值,而不是拆分:
[0-9a-zA-Z]+(?:[._ ][0-9a-zA-Z]+)*
说明
[0-9a-zA-Z]+
匹配数字或a-z小写或大写1次以上(?:
非插入组
[._ ]
匹配一个。 _或空格[0-9a-zA-Z]+
匹配数字或a-z小写或大写1次以上)*
关闭捕获组并重复0次以上