用于匹配任何字符的正则表达式,仅 white-space
RegEx for matching any char except only white-space
我正在编写 php class 从 csv 文件中提取数据。所以我需要正则表达式方面的帮助。
数据样本
Data
Data
Datatest1
Data test
Data 867@!.//()7
Field somthing
Field
正则表达式
/(?:Data|Field)(.+)/
这不应该匹配第 1,2 和 7 行,因为它在数据和字段
之后只有 space 和制表符(白色space)
这是我的正则表达式测试器 link
https://regex101.com/r/xpG25l/1/
您可以使用否定先行 (?!\h*$)
断言右边的内容不是水平空白字符 \h*
后跟字符串结尾的 0+ 次 $
(?:Data|Field)(?!\h*$).+$
如果您的正则表达式应该从字符串的开头开始匹配,您可以将 ^
附加到模式以断言字符串的开头。
否则在字符串 test Field somthing
中将匹配 Field somthing
你可以这样做
(?:Data|Field)\h*\S.*
要求在任意数量的 \h
(水平 space).
我正在编写 php class 从 csv 文件中提取数据。所以我需要正则表达式方面的帮助。
数据样本
Data
Data
Datatest1
Data test
Data 867@!.//()7
Field somthing
Field
正则表达式
/(?:Data|Field)(.+)/
这不应该匹配第 1,2 和 7 行,因为它在数据和字段
之后只有 space 和制表符(白色space)这是我的正则表达式测试器 link https://regex101.com/r/xpG25l/1/
您可以使用否定先行 (?!\h*$)
断言右边的内容不是水平空白字符 \h*
后跟字符串结尾的 0+ 次 $
(?:Data|Field)(?!\h*$).+$
如果您的正则表达式应该从字符串的开头开始匹配,您可以将 ^
附加到模式以断言字符串的开头。
否则在字符串 test Field somthing
中将匹配 Field somthing
你可以这样做
(?:Data|Field)\h*\S.*
要求在任意数量的 \h
(水平 space).