Regex 使用带单个空白的grep进行匹配
我正在尝试使用grep匹配字符串。我想要所有有两个单词的字符串,一个单词可以是任何东西,另一个时间。例如: 输入:Regex 使用带单个空白的grep进行匹配,regex,grep,Regex,Grep,我正在尝试使用grep匹配字符串。我想要所有有两个单词的字符串,一个单词可以是任何东西,另一个时间。例如: 输入: AZ time CA summer time Winter time time here! time in AZ 输出: AZ time Winter time 我尝试使用grep“[a-zA-z]time$]”,但由于某些原因,输出是: AZ time CA summer time Winter time 你知道为什么会这样吗?句子中只能有一个空格。基本上结构“时间”谢谢
AZ time
CA summer time
Winter time
time here!
time in AZ
输出:
AZ time
Winter time
我尝试使用grep“[a-zA-z]time$]”
,但由于某些原因,输出是:
AZ time
CA summer time
Winter time
你知道为什么会这样吗?句子中只能有一个空格。基本上结构“时间”谢谢 您可以使用此
egrep
:
egrep "^[a-zA-Z]+ time$" file
AZ time
Winter time
或者使用grep
您可以使用:
grep "^[[:alpha:]]\+ time$" file
您可以使用以下命令
grep '^[a-zA-Z]\+ time' file
使用
很简单,你不需要“emThe
[a-zA-Z]
在单词时间之前捕捉字母,因此你在AZ时间
中捕捉Z
,在CA夏季
中捕捉r
,在冬季
中捕捉r
。您想使用^[a-zA-Z]+time$
来匹配字符串的开头和结尾。您的[a-zA-Z]
应该有一个大写字母Z
:[a-zA-Z]
谢谢您的打字错误,我现在已经修好了。您为什么需要+?我只想对它进行一次运算。+
表示a
到z
的任何字符(1
或更多次),如果你去掉量词,它将只匹配a
到z