JQuery :: Selecting Elements That Match A Regular Expression?
Sep 16, 2009
is there a way to select elements that match a regular expression? I have a set of divs with id = "wrap_n" where n is a progressive and I need to select them and for each 1 I have to add a function that togggle the "elem_n" div.
Normally I can write regular expressions decently well but for some reason I am having trouble getting this to work. I am validating form data and need to throw an error if there are ANY spaces in the field. abc123 is fine, abc 123 is not. Any character is fine, just not a space.
I just want my regular expression to match a backslash. Thats all. Tried giving [\]. Aint working. Tried[x5c] not working. But this hexadecimal character match is working for all the other characters.
var str = "/dev/filler/test0/"; var patt = new RegExp("/test0/$"); var result = patt.exec(str); document.write(result); which returns: /test0/
in the var patt line I would like to replace the hardcoded test0 string with an expression that matches any characters between the two forward slashes. I have tried with little success.
It's purpose is to check for valid date and allows formats mm/dd/yyyy, m/dd/yyyy, mm/d/yyyy or m/d/yyyy.
When I try it with the code below it always returns null.
Code:
function isValidDate(/* String */ p1_date) { var x = "^(((0?[1-9]|1[012])/(0?[1-9]|1d|2[0-8])|(0?[13456789]|1[012])/(29|30)|(0?[13578]|1[02])/31)/(19|[2-9]d)d{2}|0?2/29/((19|[2-9]d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$";
I'm trying to perform a very simple validation of user input. I want to verify that the user entered a six-digit string consisting entirely of numbers. So anything from 000000 to 999999 is considered valid. The problem that I'm having is getting the validation to work on the entire string. In other words, 000000 is okay but 000000000000 is also returning as a match. Here's a quick code block...I have something along these lines....
That is failing when I enter 123456 into the textbox. Why, though? I know I can replace...
if (sNumberValue.match(/A[0-9]{6}z/))
....with something like...
if (sNumberValue.length == 6 && sNumberValue.match(/[0-9]{6}/))
....or I could assign a maxlength to the input box, of course. The thing is, I really want to know WHY the regular expression isn't responding as I'd expect. Is there a syntax error somewhere in the code?
I am trying to test some strings against a regular expression, but have tried at least 10 different online testers with no success at all. Plus I've tried some code to do it myself, again with no success. I know for a fact that some of the strings should match and some shouldn't match, but I am getting "No match" returns from all the strings.
Does somebody have some page code that has the regular expression in some javascript code in the head section of a document, then a form in the body that I can enter the text string, click a button, and I get an alert saying if the string matches or not?
for the character classes [ ], if i want to match ,.[] i cannot put them into the square brackets so how to deal with that? what if the characters are . or ! or ." (<-- combined) it fails if the regexp is [.!(.")] which will treat ( as one of the element. also the book javascript: the definitive guide says that (?=p) requires that the following characters match the pattern p, but do not include those characters in the match. However, the browser failed to figure this out (IE8) i.e. "asd:ert".match(/(?=:)w/) returns null
Does anyone know if it is possible to use your own regular expression for fields with the JQuery Validation plugin?I have previously used Live Validation (standalone) which allows you to do this kind of thing:var loginpass = new LiveValidation('loginpass');loginpass.add( Validate.Format, { pattern: /^[A-Za-zd]+$/i } );
I am stuck on this seemingly simple validation loop.I want to iterate through a list of comma separated emails entered in a textarea input and check their validity before submitting the form.For some reason even when I enter all valid emails every other email doesn't pass the validation test!
var okEmailArr = badEmailArr = new Array(); var emails = $('#emailList').val(); // Get email list from text are input[code]....
I have a regular expression called mCheck and a variable called usrVal which contains Ƈ/20/41/11/22' I then use the usrVal.match(mCheck) so the code looks like the following
Now, I was under the impression that if there wasn't a match then the match method would return boolean 'False'. However it is returning 'null' instead... I have used this exact same check on other pages before and it returned false just fine....
I Use the regular expression to find the html tags present in the input box, It works properly in IE & FF but in chrome it works fine when use first time for an input box but not again, below my code...
It has to be flexible in that the extension can be either 4, 5, or 6 chars (.php, .html, .shtml for example) and needs to cater for and whether querystring parameters exist too.
--------------------------- Windows Internet Explorer --------------------------- <EMBED src=http://www.youtube.com/v/JTmM3jut05Q&hl=en&fs=1& width=500 height=200 type=application/x-shockwave-flash allowfullscreen="true" allowscriptaccess="always"></EMBED>
how can i get "src" value in above code using regular expression?
does anyone know how I can build a regular expression e.g. for the string.search() function on runtime, depending on the content of variables? Should be something like this:
var strkey = "something"; var str = "Somethin like this";