我正在编写一个php类,以从csv文件中提取数据。所以我需要正则表达式方面的帮助。
数据样本
Data
Data
Datatest1
Data test
Data 867$33@!.//()7
Field somthing
Field
正则表达式
/(?:Data|Field)(.+)/
这不应与第1,2和7行匹配,因为它在“数据和字段”之后仅具有空格和制表符(空白)
这是我的正则表达式测试器链接 https://regex101.com/r/xpG25l/1/
答案 0 :(得分:2)
您可以使用否定的前行(?!\h*$)
来声明右边的内容不是水平空格字符\h*
的0+乘以字符串$
的结尾
(?:Data|Field)(?!\h*$).+$
如果您的正则表达式应该从字符串的开头开始匹配,则可以在模式后附加^
来声明字符串的开头。
否则,在字符串test Field somthing
中将有一个匹配项Field somthing
答案 1 :(得分:2)