regex - 使用 grep 查找带有通配符和排除项的整个单词
问题描述
我有一些随机字符串。我正在尝试仅使用以下内容打印整个单词:
grep -ioh "\w*ice\w*"
这工作正常,但它似乎不显示符号而只显示字母。我希望通配符允许除空格以外的任何符号。这有可能吗?
为了更好地解释,上面的代码在一个字符串中,如:
这只猫非常好,只显示“好”,而我想要“非常好”
解决方案
您可以使用
grep -ioh "\S*ice\S*"
或者
grep -ioh "[^[:space:]]*ice[^[:space:]]*"
[^[:space:]]
(或)匹配除空白字符以外的\S
任何字符。
查看grep
在线演示:
grep -ioh "\S*ice\S*" <<< "The cat is very-nice"
## => very-nice
推荐阅读
- reactjs - 从表开始添加或删除时,React memo 会重新呈现后续表行
- error-handling - 特征错误(VarCovarResid):“x”中的值无限或缺失
- python - 使用 Django SAML2 Auth 和 AzureAD 实现 SSO 时出现的问题
- mongodb - mongoDB非分片集合中的多线程最佳实践
- python - 动态模块没有定义模块导出函数(PyInit_example)
- powerbi-desktop - 使用存储过程的 Power BI SQL Server 数据库连接
- arrays - 爱特梅尔 AVR 微控制器。我需要反转一个数组。我正在构建失败
- avro - avro 架构时间戳格式
- django-rest-framework - Django REST drf-嵌套字段的壮观错误检测
- c# - 用户身份验证过期后,CustomAuthStateProvider 不会重定向到登录