【发布时间】:2021-01-03 17:29:27
【问题描述】:
例如,我有一个具有相同数据格式的文件
DATA102:991n| DATA | Data222
DATA10:22 | DATA | Data222
DATA102:991 | DATA | Data222
DATA10:22 | DATA | Data222
DATA102:991 | DATA | Data222
DATA10:22 | DATA | Data222
我想删除“|”之后的所有内容,例如我想要这个输出
DATA102:991n
DATA10:22
DATA102:991
DATA10:22
DATA102:991
DATA10:22
我如何使用正则表达式来实现?
我尝试查找:(.*|).* 然后替换 /1
但它不起作用我想删除|之后的所有内容
【问题讨论】:
-
匹配
/ *\|.*/并替换为空字符串 -
@anubhava 不起作用,你能把它作为答案并测试它吗?
-
不要在记事本++中使用
/。只需<space>*\|.*使用空格而不是<space> -
@anubhava 仍然没有工作
-
@hewman 有几个解决方案应该适合您,它们如下所示。但是,您拥有的文本实际上可能与您共享的文本不同。你确定有常规空间吗?有标签吗?软空间?单词之间是否有任何不可见的字符,例如 ZWJ(零宽度连接符)?我suggested
[ \t]*\|.*,但你不妨试试[^\S\r\n]*\|.*,甚至[^\w|\r\n]*\|.*