gpt4 book ai didi

regex - awk 模式匹配

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:15:05 27 4
gpt4 key购买 nike

我要打印

userId = 1234
userid = 12345
timestamp = 88888888
js = abc

来 self 的数据

messssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
<input name="userId" value="1234" type="hidden"> messsssssssssssssssssss
<input name="userid" value="12345" type="hidden"> messssssssssssssssssss
<input name="timestamp" value="88888888" type="hidden"> messssssssssssss
<input name="js" value="abc" type="hidden"> messssssssssssssssssssssssss
messssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss

我如何使用 AWK(或其他)执行此操作?假设我的数据存储在“$info”变量中(单行数据)。

编辑:单行数据我的意思是所有数据都像这样表示

messss...<input name="userId" value="1234" type="hidden">messsss...<input ....>messssssss

所以我不能使用 grep 来提取兴趣部分。

最佳答案

我不确定我是否理解您的“单行数据”评论,但如果这是在一个文件中,您可以这样做:

cat file
| grep '^<input '
| sed 's/^<input name="//'
| sed 's/" value="/ = /'
| sed 's/".*$//'

这是剪切'n'粘贴版本:

cat file | grep '^<input ' | sed 's/^<input name="//' | sed 's/" value="/ = /' | sed 's/".*$//'

这变成了:

messssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
<input name="userId" value="1234" type="hidden"> messsssssssssssssssssss
<input name="userid" value="12345" type="hidden"> messssssssssssssssssss
<input name="timestamp" value="88888888" type="hidden"> messssssssssssss
<input name="js" value="abc" type="hidden"> messssssssssssssssssssssssss
messssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss

很高兴进入:

userId = 1234
userid = 12345
timestamp = 88888888
js = abc

grep 简单地提取你想要的行,而 sed 命令分别:

  • 去掉第一个引号。
  • 用“=”替换名称和值之间的部分。
  • 删除值(value)收盘价之后的所有内容(包括该报价)。

关于regex - awk 模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1460354/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com