如何解决重击如何在图案之后找到图案
所以我想在特定图案之后找到图案
例如输入文件为
/wav1/af_ZA_IT_001_B.wav;2.98;3.67;;;dáár wav1
/wav1/af_ZA_IT_001_B.wav;2.98;3.67;;;dáár we1
/wav1/af_ZA_IT_001_B.wav;4.05;7.9;;;dit is franko wav1 van niekerk hier en kobus buys kobus
然后输出文件将在wav1
之后寻找;;;
使用
grep "wav1" file.txt
我将所有wav1突出显示。
/wav1/af_ZA_IT_001_B.wav;2.98;3.67;;;dáár wav1
/wav1/af_ZA_IT_001_B.wav;2.98;3.67;;;dáár we1
/wav1/af_ZA_IT_001_B.wav;4.05;7.9;;;dit is franko wav1 van niekerk hier en kobus buys kobus
但是,由于每个文件都以wav1开头,所以我找不到w ;;;
之后的位置。
如何在模式(';;;')之后找到模式('wav`')
预期输出为
/wav1/af_ZA_IT_001_B.wav;2.98;3.67;;;dáár wav1
/wav1/af_ZA_IT_001_B.wav;4.05;7.9;;;dit is franko wav1 van niekerk hier en kobus buys kobus
解决方法
轻松使用grep
;
grep ';;;.*wav' file.txt
如果您有grep -P
,则可以使用Perl正则表达式技巧;以下内容只会突出显示实际的wav
匹配项:
grep -P ';;;.*\Kwav' file.txt
如果只想提取;;;
之后的部分,可以使用sed
;
sed -n 's/.*;;;//;/wav/p' file.txt
在正则表达式周围通常最好使用单引号,以避免外壳与正则表达式混淆(双引号较弱,不会保护反斜杠,反引号或许多美元符号)。
,对于GNU grep,先匹配;;;
,然后匹配任何.*
的文本,然后再使用wav1
匹配\bwav1\b
,以确保您不匹配wav12
:
grep -P ';;;.*\bwav1\b' yourfile.txt
P
选项表示将使用PCRE引擎。
我相信
model.addAttribute("ListOfThreeProducts",products);
足够了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。