Я хотел бы регулярное выражение JavaScript, которое может соответствовать строке либо в начале другой строки, либо после дефиса в строке.JavaScript регулярное выражение в соответствии с переносными словами?
Например, «milne» и «lee» и «lees» должны соответствовать «Lees-Milne».
Это мой код до сих пор:
var name = "Lees-Milne";
var text = "lee";
// I don't know what 'text' is ahead of time, so
// best to use RegExp constructor.
var re = RegExp("^" + text | "-" + text, "i");
alert(re.exec(name.toLowerCase()));
Однако это возвращает нуль. Что я делаю не так?
вы имели в виду процитировать строку, например: 'вар Re = RegExp ("^" + текст +«| - "+ текст," i ");'? – andrewmu
Нет - спасибо, что указали это! Кажется, чтобы решить проблему, хотя мне все равно хотелось бы получить отзывы о том, выглядит ли общее регулярное выражение разумным. – Richard
Я думаю, что исправление выглядит нормально. Я не могу придумать более простой способ сделать это. – andrewmu