0

搜索这样的表达式时,如何在 ag 中转义单引号?

ag ''react-redux''

我知道这"'react-redux'"是这种情况下的一种解决方案,但我想要一个让我使用单引号的解决方案。这样我就不必担心使用双引号时 , 等$所需的复杂转义序列。%

4

2 回答 2

2

您可以使用 \x27 来表示单引号。(\x27 只是单引号的 ascii 代码)因此,您可以使用:

ag '\x27react-redux\x27'

参考:如何在 sed 中转义单引号? - 堆栈溢出

于 2017-11-03T08:25:35.720 回答
1

虽然 \x27 有效,但它很模糊。标准方法是三重单引号。所以,如果你想转义周围的单引号,'react-redux'你会用一对单引号包围每个单引号:'''react-redux'''。例如:

$ag '''DD-MON-YYYY''' users.sql
19:       TO_CHAR(lock_date, 'DD-MON-YYYY') AS lock_date,
20:       TO_CHAR(expiry_date, 'DD-MON-YYYY') AS expiry_date,
23:       TO_CHAR(created, 'DD-MON-YYYY') AS created,

因此,一个仅匹配引用项目的简单示例:

$touch test.txt
$echo value >> test.txt
$echo '''value''' >> test.txt
$echo value >> test.txt
$ < test.txt 
value
'value'
value
$ ag '''value''' test.txt
2:'value' 
于 2018-06-03T03:33:02.463 回答