【发布时间】:2021-01-22 16:54:21
【问题描述】:
假设我有这些数据:
hi helo tmp#100000 bye
100000 hi bye
hi 100000 bye
100000 在变量中:$var 我只想 grep 100000 作为一个完整的单词,所需的输出:
100000 hi bye
hi 100000 bye
我已经尝试了所有在 StuckOverflow 中得到解答的东西,但似乎没有任何效果:
grep "\b$var\b", grep -E "[[:blank:]]$var[[:blank:]]" 等等。
我认为问题可能出在#。
该解决方案需要适用于变量等于:hi.*bye 作为正则表达式的情况。
请帮忙
【问题讨论】:
-
使用
grep -E "(^|[[:blank:]])$var($|[[:blank:]])" -
grep -Fw "$var"或grep -P "\\b$var\\b"将起作用除了#不是“单词字符”,因此单词边界匹配#和1