Простой способ дополнить регулярное выражение - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь сделать дополнение к регулярному выражению. Я видел, что этого, по-видимому, не существует "из коробки", однако я не могу найти способ сделать это с негативными взглядами, рекомендованными в других сообщениях.

Я хочу оставить только те строки, которые несодержит квадратные скобки:

都営大江戸線「牛込神楽坂」歩6分 --> Returning this entirely
[ 乗り換え案内 ] --> Not this
東京メトロ南北線「市ヶ谷」歩8分 --> Returning this entirely
[ 乗り換え案内 ] --> Not this
東京メトロ有楽町線「市ヶ谷」歩8分 --> Returning this entirely
[ 乗り換え案内 ] --> Not this
東京メトロ有楽町線「市ヶ谷」歩8分[ 乗り換え案内 ] --> Returning "東京メトロ有楽町線「市ヶ谷」歩8分"

В настоящее время мое регулярное выражение будет содержать только те, которые заключены в квадратные скобки.

\[[^\]]+\]|(\+)

Не могли бы вы представить, как его дополнить?

1 Ответ

0 голосов
/ 03 октября 2019

Это будет сделано:

/^((?!\[))(.*)((?!\]))$/

Однако, оно также не будет соответствовать строкам типа:

[乗 り 換 え 案 内

乗 り 換 え内 内]

Пример:

let re = /^((?!\[))(.*)((?!\]))$/;

console.log("都営大江戸線「牛込神楽坂」歩6分".match(re));
console.log("[ 乗り換え案内 ]".match(re));
console.log("東京メトロ南北線「市ヶ谷」歩8分".match(re));
console.log("[ 乗り換え案内 ]".match(re));
console.log("東京メトロ有楽町線「市ヶ谷」歩8分".match(re));
console.log("[ 乗り換え案内 ]".match(re));
console.log("東京メトロ有楽町線「市ヶ谷」歩8分[ 乗り換え案内 ]".match(re));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...