名称|代码
目标是将它们分成2个文件
示例:
我做什么
我照顾|字符 我删除整行: 如果代码仅包含数字 和/或仅包含字母 和/或短于9
示例列表变为:
Garry Cooper | abc123h1n1
这个步骤我每天都会这样做,有时我会得到2000行:/真正的痛苦
我曾经在记事本++中使用正则表达式 但我找不到这个匹配 在php中我也不是很糟糕 请帮帮我
更新01: 正则表达式发现(?i)^ [^ |] \ | \ h [a-z \ d] {0,8} $ \ R? 目前的问题: 写一个小的PHP脚本或可能重用的类
从文本框(html表单)或txt文件
提交数据与txt文件中可下载的正则表达式匹配的行。 文件中的其他人
文件的2个链接
提前感谢大家的帮助
答案 0 :(得分:2)
如果您只使用与.*
匹配的贪婪点,则不检查长度。可以使用限制量词进行检查。要匹配0到8个符号,您可以使用{0,8}
。除|
之外的所有内容都可以与[^|]*
否定字符类匹配。
使用
(?i)^[^|]*\|\h*[a-z\d]{0,8}$\R?
请参阅regex demo(请注意,默认情况下,在基于Notepad ++ regex的搜索和替换中使用gm
标志。)
解释:
^
- 开始行[^|]*
- 管道以外的零个或多个符号\|
- 文字管道符号\h*
- 零个或多个水平空格[a-z\d]{0,8}
- 字母a到z和A到Z(由于(?i)
不区分大小写的修饰符)或数字,0到8次出现$
- 行尾和\R?
- 一个或零(otpional)换行符。