Как написать регулярное выражение для следующего случая? - PullRequest
0 голосов
/ 07 июня 2018
namespace App\Http\Controllers;

use App\Http\Requests\ValuatePropertyRequest;
use App\Valuation\ValuationManager;
use Illuminate\Support\Facades\Cache;

class SomeController extends Controller

Я хочу выбрать все use строки

use [A-Za-z\\\n;]* Это то, что я придумал, с моими ограниченными знаниями.

Это выбирает:

enter image description here

Но я хочу выбрать от первого use до последнего use 's ;

Каким будет правильное регулярное выражениедля этого?

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Проблема в том, что у вас есть \n в наборе символов.Таким образом, он соответствует символу новой строки и любым символам в начале следующей строки, которые также находятся в наборе.

Просто извлеките \n из регулярного выражения.

use [A-Za-z\\;]*

Вы, вероятно,также хотите завершить совпадение символом ;, а не разрешать несколько из них в совпадении.Так и должно быть:

use [A-Za-z\\]*;
0 голосов
/ 07 июня 2018

Как я понимаю, вам нужно выбрать строки, которые начинаются с «использования».Итак, следующие регулярные выражения помогут вам в этом:

use.*

или

use.*;

Надеюсь, я ответил на ваш вопрос.

...