gpt4 book ai didi

regex - 在 bash 中用空格分隔一个完整的单词

转载 作者:行者123 更新时间:2023-12-03 23:33:52 26 4
gpt4 key购买 nike

假设我有这些数据:

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 作为正则表达式的情况。

请帮忙

最佳答案

使用 awk 的非正则表达式搜索:

awk -v var="$var" '
{for (i=1; i<=NF; ++i) if ($i == var) {print; break}}' file
100000 hi bye
hi 100000 bye

否则使用自定义 FS 的 awk 更短:

awk -F "(^|[[:blank:]])$var([[:blank:]]|$)" 'NF > 1' file

关于regex - 在 bash 中用空格分隔一个完整的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64249030/

26 4 0
文章推荐: google-cloud-platform - 如何将持久存储挂载到 Google Cloud Run?
文章推荐: html - 如何使
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com