RegEx With Javascript
Nov 15, 2006I need information about javascript & regular expression.please suugest me any book or tutorial web site.
View 2 RepliesI need information about javascript & regular expression.please suugest me any book or tutorial web site.
View 2 RepliesI have a function which validates the password if there is a number:
-------------------------------------------------
function findNumeric(str_obj){
regEx = /d/;
if (str_obj.match(regEx))
return true;
else
return false;
}
--------------------------------------------------
The problem arises when I put a password with a space in between e.g:
'test test1'. The fucntion returns false. I've tried 's' in the
regEx but the user can put the space anywhere..
Any idea how to solve this problem as I should be able to put any
alplanumeric value into the password, including space.
I have a variable named "acct". I first want to remove any "-" characters
from it's value. After this I want to verify that we have only exactly 12
digits in the variable.
Unfortunately I'm pretty green as far as using RegEx.
/d{12}/.test(acct); should do the second part, but how do I do the first?
In have a string of data like so:
<div id="feedback">
<p>[DEC 12th Anthony]I like it[DEC 12th Anthony]I agree</p>
</div>
I'm trying to use regex to add a <br /> before each item in hard brackets so the comments are broken out. Here's what I've tried.
re = /(.*])/gi;
vTemp = aSourceObject.innerHTML.replace(re,"<br />$1");
What I end up getting is:
<div id="feedback">
<p><br />[DEC 12th Anthony]I like it[DEC 12th Anthony]I agree</p>
</div>
It gets it right, but only for the first item, not the second one. If I tell it to put the <br /> after then I get
<p>[DEC 12th Anthony]I like it[DEC 12th Anthony]<br />I agree</p>
So its like its reading the entire section in brackets as one match instead of 2 seperate matches..
I have a little Ajax script and I'm trying to remove some CSS elements from a DIV tag and I'm have a bit of trouble with the Regex. Right now I'm trying to remove the z-index attribute. It can look something like any of these:
z-index: 1000;
z-index: 0;
z-index: 75;
etc...
Here's what I'm using right now:
document.getElementById('right_column').innerHTML.replace(/z-index: [0-9]; /gi, "replaced"));
It replaces z-index: 0; just fine but I can't find the correct modifiers to make it work for 2, 3 or 4 digit z-indexes.
I am using Regular Expressions and Javascript to validate a form,
specifically I want to make sure that if they try to upload a file that
it has a proper name w/ certain extensions (doc,pdf, rtf). The script
works on IE and Mozilla but fails on Safari on the MacOSX. Here is my
code..
// ok files with proper extension
var reOKFiles = /^([a-zA-Z].*|[1-9].*).(doc|DOC|pdf|PDF|rtf|RTF)$/;
//where i check for the file...
if(window.document.myForm.myDocument.value != ""){
var fileStr = window.document.myForm.myDocument.value;
if(!reOKFiles.test(fileStr)){
alert("Please try again, you tried to upload an invalid file type
for CRITERIA 1");
window.document.myForm.myDocument.focus();
return (false);
I am looking out for a regular expression that takes the following format
textfile_20060711_113441.txt
where
textfile = name of the file
2006 = year
07=month
11=day
11=hour
34=minute
41=seconds.
.txt is extension
The file always comes in the same format. however we need to implement checks so that user doesnt enter invalid month/day/hour/minute etc.
I have created the following regular expression
textfile_(?<Year>(?:d{4}|d{2}))(?x)(?<Month>d{1,2})(?<Day>d{1,2})_([01]?[0-9]|[2][0-3])([0-5][0-9])([0-5][0-9]).[a-zA-Z]{3}
Can anyone guide me as to how do i modify this regex to suit my requirement. This regex currently is not able to handle invalid months or days etc.
Also i do not know how to integrate this regex in my javascript. Pointers or examples will be helpful.
Basically i want to get the current url, and then replace http:// with
something else.
Here is the current code.
var current_url = window.document.location;
var re = new RegExp("http://", "g");
if(re.test(current_url)) {
me = current_url.replace(re,"http://www.addme.com/");
window.alert("found :: " + me + " :: " + current_url);
} else {
window.alert("not");}
if my page was http://ww.google.com 'd get the alert to be:
found :: undefined :: http://www.google.com.
I dont understand why i am getting undefined. When re.test() works.
surely that means the regex is correct.
Trying to match the entire following object literal code using a RegEx.
var Punctuators = { '{' : 'LeftCurly', '}' : 'RightCurly' }
Variations on the idea of using /var.*{.*}/ of course stops at the
first }.
I was using the following code:
element.value = element.value.replace(/ /g,'');
to remove all the spaces in a string.
However in IE6 it complained with and "Expected ')'" error.
How can I tell IE6 to replace just spaces (i.e. not using s)?
I tried / / and /[ ]/ but neither of them worked either.
I need to strip everything from a file except what is between <body>
and </body>
ok heres a regex
/^(?=.*d)(?=.*[A-Z])(?=.*[a-z]).{8,16}$/
which checks I have at least one lowercase letter, one uppercase letter and one number and the string is between 8 and 16 characters.I have adapted this from another source and it works as intended on all browsers but not IE7 or IE6 (oh microsoft why do you make my life so hard)This works fine in all other browsers (IE8 is fine) but doesnt work in IE6 or IE7
I'm writing an ECMAScript tokeniser and parser and trying to find out if I can eliminate the switching from tokenising "/" as start of regex or the division operator depending on the parser feedback - essentially, if I can make the tokeniser independent of the parser. (I have a gut feeling this needs too much special casing to be worth it). Code:
View 2 Replies View RelatedI have been playing with this regex for a few hours now I want to make it so it accepts commas also.
At the moment it works with A-z and - . ' but can't seem to figure out how to include commas.
I have a bunch of text that I want to split into an array of sentences. I have the following code that works just fine on FF and Chromium, but ofc has to fail on the pile of *** that is IE [code]...
It does not produce any errors, but the resulting array often has empty strings as value instead of the sentences that should be there. how to do this in a way it also works on IE?
i have the following regex:
(s*{s*(<?)s*(>?)s*}s*)
this needs to be able to match a string and make the following replacements:
if the string matches without < or >, replace the match with a space, a replacement string, and another space. if < matches also, do not add the left space. if > matches, do not add the right space. if < and > match, do not add the beginning or ending space
Old {} String => Old Replacement String
Old {<} String => OldReplacement String
Old {>} String => Old ReplacementString
Old {<>} String => OldReplacementString
this will have to be done a LOT of times, so efficiency is very important the answer in php is below. can anyone help me figure out how to do it in javascript? PHP Code:
How would I get this variable to allow whitespace?
var illegalChars = /W/; // allow letters, numbers, and underscores
I need to write a function that will remove a specified parameter from a
URL. For example:
removeParam("param1", "http://mysite.com/mypage.htm?param1=1¶m2=2");
would return:
"http://mysite.com/mypage.htm?param2=2"
I'm thinking that string.replace(/regex/, ""); would do the trick, but how
do I construct a correct regex?
I see a problem if the parameter name ("param1") happens to contain any
characters that have a special meaning in a regular expression.
I don't know where the actual issue is, but hopefully someone can explain.
The following displays "5" in FireFox, but "3" in IE:
<script type="text/javascript" language="javascript">
var newString = ",a,b,c,";
var treeArray = newString.split(/,/i);
alert(treeArray.length);
</script>
I have a string I have to parse
AB1.2CD34
I need to split the string into groups of letters and numbers..
"AB" "1.2" "CD" "34"
What is the best way of doing this ?
I've looked at string.split using a regex, but that doesn't output the
delimiters.
I am trying to write a regex that will parse BBcode into HTML using
JavaScript. Everything was going smoothly using the string class
replace() operator with regex's until I got to the list tag.
Implementing the list tag itself was fairly easy. What was not was
trying to handle the list items. For some reason, in BBcode, they
didn't bother defining an end tag for a list item. I guess that they
designed it with bad old HTML 3.2 in mind where you could make a list
by using:
<ul>
<li>item 1
<li>item2
</ul>
However, I need to make this XHTML compliant, so I needed to add the
</li> tag into the mix. Unfortunately, the only way to find where to
put it is to find the next[*] (<li>) tag or an open list (in the case
of nested lists) or close list tag. I was trying to get a rule that
handles the list items to work, but it only matches the first item in
any list. Here is the line of code:
bbcode =
bbcode.replace(/[list(=1|=a|)](.*?)[*](.*?)([*]|[list]|[/list])/g,
'[list$1]$2<li>$3</li>$4');
First, I check to make sure that the list item is inside a list. Then,
I match the[*] tag to find the start of the item, then I match either
the next[*],, orto determine the end of the item.
This successfully prevents a list item outside of a list from being
made into a <li> element, but only matches the first list item in a
list. Is there any way to make this match all occurances of this
pattern without looping over the statement until the pattern can no
longer be found?
I am trying to parse a HTML page and want to replace the input element The following code fails all the time.
var ex = "<input type="hidden" name="__VIEWSTATE"
id="__VIEWSTATE"
value="/wEPDwULLTE2NjEyNTI0MThkGAEFEHNlY3Rpb25zR3JpZFZpZXc PZ2QN271==
/>";
var regEx = new RegExp("<s*input[^>]*>(.*?)s*/");
if (ex.match( regEx))
{
alert('match');
}
else
{
alert ('no match');
}
I have been working on this for a few hours and am frustrated
beyond all extent. I have tried to research this on the web as well
with no success. I am trying to match certain contents within a
wrapper div. So for example if the inside of the wrapper div was the
following:
<div id="wrapper">
<a href="#">a great link that contain text and symbols</a>
<div... </div>
<div... </div>
</div>
I would like to strip out all the internal div's. But because there
can be alot of internal div's, I figured it would be less processor
intensive to just match the first 'a' tag and repopulate the wrapper
div with the match. I am trying to use something like the following
regex:
re = /^<a(.+)</a>/;
with the following statment:
$temp = document.getElementById('wrapper').innerHTML.match (re);
but this is returning the entire contents of the wrapper div. I have
tried variations of the regex and either continue to get the entire
contents or null returns. Any help would greatly be appreciated.
BTW, I can't match to the first because the contents may be touching (ie ...</a><div>...).
I'm trying to test if certain radio buttons are selected, but the name varies. My boss is considering changing the names to further isolate them breaking the script as it works now. I'm trying to figure out how to test the new case just like it works now. Here's a link to my pastebin
View 6 Replies View RelatedInternet Explorer 8 does not behave the same as Firefox and Chrome for regex exec() method in javascript. IE8 seems not to comply with ECMA-262 here, as the others do. Regex's match() method works OK for all.
Any ideas on how to work around to use exec() with IE8?
Here is the sample code to show the issue:
Results:
IE8: withMatch=images/ withExec=null
Firefox and Chrome withMatch=images/withExec=images/
I am willing to know how to match a website s title using regex.
View 4 Replies View Related