Игнорирование символов в поиске с помощью ack - PullRequest
0 голосов
/ 30 марта 2012

Я использую ack для поиска экземпляров PHP-функции «split (», которая сейчас устарела. К сожалению, она вызывает экземпляры preg_split (который все еще действителен), как я могу игнорировать эти результаты, пока ещепоиск "split ("?

ack --type=php split\\\(

Спасибо.

Ответы [ 3 ]

2 голосов
/ 30 марта 2012
ack --type=php '[^_]split\('

Так как preg_split() имеет подчеркивание перед разделением, просто используйте отрицательное совпадение для подчеркивания.

0 голосов
/ 05 июня 2012

Один из способов перебора - использовать флаг -w, чтобы видеть только split как слово.

ack -w split

Это все равно даст вам попадания в «split», которые на самом деле не являются вызовами функций, если они у вас есть. Но иногда низкотехнологичный способ проще всего.

0 голосов
/ 30 марта 2012

Что ж, решение может заключаться в том, чтобы сделать больше поиска / замены не для разделения, а для разделения, которому предшествует:

  • ;
  • пробел
  • tab
...