var RegTxt = "$f1$='test' AND f2='test2'";
alert(RegTxt.match(/\'[^\']*'/g))
верно возвращает результат: i 'test', 'test2', но как я могу удалить одиночную кавычку в матче.javascript REGEX удаляет одинарную цитату в матче
var RegTxt = "$f1$='test' AND f2='test2'";
alert(RegTxt.match(/\'[^\']*'/g))
верно возвращает результат: i 'test', 'test2', но как я могу удалить одиночную кавычку в матче.javascript REGEX удаляет одинарную цитату в матче
Это грубое решение вашей проблемы.
var match = RegTxt.match(/\'[^\']*'/g)
match = match.substring(1, match.length - 2);
var matches = str.match(regex);
var newMatches = [];
for(i in matches)
{
var word = matches[i];
newMatches.push(word.substring(1,word.length-1))
}
newMatches
теперь будет содержать массив, который нужно.
Trivial подход:
RegTxt.replace(/'/g, "")
с помощью регулярных выражений:
RegTxt.replace(/\'([^\']*)'/g, "$1")
Это было бы очень просто, если JavaScript поддерживается отрицательные: Утверждения назад
/(?<=').*?(?=')/
Но, к сожалению, это не ,
В таких случаях мне нравится абы использование String.prototype.replace
:
// btw, RegTxt should start with a lowercase 'r', as per convention
var match = [];
regTxt.replace(/'([^']*)'/g, function($0, $1){
match.push($1);
});
match; // => ['test', 'test2']
>> RegTxt должен начинаться с строчной буквы «r», согласно соглашению. Какая конвенция? Это очень субъективно и есть много мнений по этому вопросу! –
Столичный первый символ в JavaScript указывает на конструктор. Как я уже сказал, это конвенция. См [это] (http://books.google.co.uk/books?id=PXa2bby0oQ0C&pg=PA49&lpg=PA49&dq=Crockford+capital+constructor&source=bl&ots=HHshq8r2dL&sig=l3N7p2R9OeVl5s42pT8hophevgs&hl=en&ei=YWm7S4eiK4ay-Abjq_zNCA&sa=X&oi=book_result&ct=result&resnum = 1 & ved = 0CAYQ6AEwAA # v = onepage & q = & f = false) * (... интересно, почему я был проголосован) * – James
да, ваше решение устраняет проблему – mushtaq
Было бы хорошо знать, почему понижающие голоса, основываясь на том, что это функционально работает, и я действительно упоминал, что оно является сырым раствором. – Fenton