【发布时间】:2017-08-18 17:47:27
【问题描述】:
我又一次遇到了 Notepad++ 中的正则表达式问题,因为我对此了解不多。
我有一个 .csv 文件,但我需要找到所有带有 n(比如说 4)或更多管道字符的行。
我拥有的字符串示例:
6454345|User1-2ds3|62562012032|9c1fe63ccd3ab234892beaf71f022be2e06b6cd1
3305611|User2-42g563dgsdbf|22023001345|c36dedfa12634e33ca8bc0ef4703c92b73d9c433
8749412|User3-9|xgs|f|98906504456|411b0fdf54fe29745897288c6ad699f7be30f389
5151540|User4-jy|n|12202310|6a54c608289f4aedfab63ca640bcd5d174fd8592
我需要找到这些字符串,它们有 4 个或更多竖线字符:
8749412|User3-9|xgs|f|98906504456|411b0fdf54fe29745897288c6ad699f7be30f389
5151540|User4-jy|n|12202310|6a54c608289f4aedfab63ca640bcd5d174fd8592
我在这里进行了一些搜索,但找不到我正在寻找的确切内容,到目前为止,我使用了这些问题中提供的答案,除此之外我没有找到任何类似的东西:
Find Lines with N occurrences of a char
Regular expression to match text that contains n or more of specified character
我用竖线字符替换了请求的字符,但这对我不起作用。
【问题讨论】:
-
你是用
|还是\|?请发布您尝试过的内容。另外,你需要用线条做什么?随便找?或者以任何方式替换/修改? -
我只需要找到这些行并手动修复它们,因为它们都需要不同的处理。这是我尝试过的,例如: ^[^|\\r\n]*(?:\|[^|\\r\n]*){4,}$ 或这个: (.*?\ |){4,} 和这个:^(|[^|]*){4,}
-
只到 ([|][^|\n]*){4,}.*
标签: regex csv character notepad++