Простая регулярка
Еще раз всем привет.
Пробую написать простую регулярку так, чтобы попадало все, что НЕ начинается с += или = или ++ и после цифры. В общем, регулярку чтоб было сначала += или = или ++ и после цифры написал: str = prompt("sd"); re = /(?:\+\=|\=|\+\+)(?=\d)\d*/; found = str.match(re); alert(found) Нужна полностью обратная ей. Кстати, я эту правильно написал, вроде работает? |
PashPP,
Приведите пару примеров входных строк и строк в итоге |
Deff,
f = str.match(re) re = ??? str = "+=43534" f = null str = "++2323" f = "null" str = "=343434" f = null str = "dsfsdf" f = "dsfsdf" str = "=43gfvb" f = "gfvb" str = "+====+" f = "===+" |
В общем, мне это надо чтоб ввод всех значений, кроме начинающихся с ++, =, += и дальше цифры отменялся.
|
str = "=43gfvb"; alert(/^(?:\+[+=]|=)\d/.test(str) ? str : null) str = "d43gfvb"; alert(/^(?:\+[+=]|=)\d/.test(str) ? str : null) |
<pre> f = str.match(re) re = ??? str = "+=43534" f = null str = "++2323" f = "null" str = "=343434" f = null str = "dsfsdf" f = "dsfsdf" str = "=43gfvb" f = "gfvb" str = "+====+" f = "===+" </pre> <script type="text/javascript"> function TstFunc() { var a = document.getElementById('Input'); var str = a.value; var str2= str.replace(/\+?[\+=]\d*/i,'') alert(str2) } </script> <input id="Input" type="text" value="+=43534"><input type="button" value="Test" onclick="TstFunc()"> |
Aetae,
/^(?:\+[+=]|= Сорри, но не то. Кстати, может мне кто-то обьяснить простыми словами, что делает символ ^ и $ в начале и конце строк? Со справочника не сильно понял. То ли оно ищет с конца/начала, то ли еще что-то... |
Цитата:
|
PashPP,
У Aetae, Имхо правильнее он ток звездачку забыл (Поправь в моей версии var str2=str.replace(/^(?:\+[+=]|=)\d*/,'') |
Deff,
Спасибо, конечно. Но вы оба написали обратное тому, что я просил. Регулярка должна ловить все, что НЕ ловит предыдущие ваши да и моя с стартовом посте. Вот в примере с replace должно удаляться все, кроме += / ++ / == и цифры. а не наоборот. Конечно, у меня есть идеи, как это сделать и с регулярками выше, но это немного криво и мне бы чисто ради интереса и обучению регуляркам хотелось увидеть регулярку полностью обратную имеющимся. Которая должна брать все, что не похоже на +=434343. Цитата:
|
Часовой пояс GMT +3, время: 22:17. |