这是我的.txt文件中存在的数据
+919000009998 SMS +919888888888
+919000009998 MMS +91988 88888 88
+919000009998 MMS abcd google
+919000009998 MMS amazon
我想这样转换.txt
919000009998 SMS 919888888888
919000009998 MMS 919888888888
919000009998 MMS abcd google
919000009998 MMS amazon
仅在为数字,为字符串的情况下删除第三行中的+符号以及空格(如果为字符串,则不执行任何操作)
我可以在搜索中编写并可以在记事本++中替换的正则表达式吗?
答案 0 :(得分:-1)
\+|(?<=\d)\h+(?=\d)
LEAVE EMPTY
说明:
\+ # + sign
| # OR
(?<=\d) # positive lookbehind, make sure we have a digit before
\h+ # 1 or more horizontal spaces
(?=\d) # positive lookahead, make sure we have a digit after
屏幕截图:
答案 1 :(得分:-1)
所有先前的答案都将完美地发挥作用。
但是,我只是在需要时添加它
如果由于某些原因,第三列上的非电话号码用空格分隔(我想到的街道是+919000009998 MMS street foo nº 123 4º-B
),则可以改用此正则表达式(只要第三个列加入号码,列以+
开头):
搜索:^[+](\S+\s+\S+\s++)(?:([^+][^\n]*)|[+])|\G\s*(\d+)
替换为:\1\2\3
这将避免在我之前的示例中加入3
和4
。
您有一个演示here。