I have a regex that I've been using for a while to highlight a hashtag (eg. #stackoverflow) or a username/mention (eg. @jeffjohnson) while a user is typing out text.  Here is how I create that regex:       NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"(#|@)(\\w+)|(#|@)" options:0 error:&amp;error];   I want to add to this regex pattern so that it will also highlight a URL. So I changed it to the pattern to the following: @"(#|@|http)(\\w+)|(#|@|http)"  This works correctly when they type http it will become highlighted but when they type a colon (:) the colon is not highlighted.  If I try adding www to the regex pattern the same way that I added http, the same thing happens. www will highlight correctly but as soon as you type a period (.) the period will not highlight.  How can I add full URL detection to this regex pattern?
6007
How can I check if a given string is a valid URL address?  My knowledge of regular expressions is basic and doesn't allow me to choose from the hundreds of regular expressions I've already seen on the web.
106890
Attention I have already a possible answer and will add it soon. I thought it would be useful to have a solution about it on the site. (Other answers are naturally welcome too).  Question How to activate or suppress the french spacing before some punctuations like a colon in the text argument of \href locally (for one specific \href) and globally? Switching the language is not an answer!  Minimal examples for tests (the argument of \href should normally be a valid url, so it is a bit unfair to add an example without a colon in the link):  pdflatex  With pdflatex it depends on the link how the argument of \href is printed:  \documentclass{article} \usepackage[french]{babel}  \usepackage{hyperref}  \begin{document} With pdflatex no french spacing in links with colons:   \href{link}{a:b}  \href{link:colon}{a:b}  \end{document}     lualatex  With lualatex the spaces are always there:  \documentclass{article} \usepackage[french]{babel}  \usepackage{hyperref}  \begin{document} With lualatex always spaces:  \href{link}{a:b}  \href{link:colon}{a:b}  \end{document}
49733
I am currently defining regular expressions in order to capture parameters in a URL, as described in the tutorial. How do I access parameters from the URL as part the HttpRequest object? My HttpRequest.GET currently returns an empty QueryDict object. I'd like to learn how to do this without a library, so I can get to know Django better.
1108
I basically need to highlight a particular word in a block of text. For example, pretend I wanted to highlight the word &quot;dolor&quot; in this text: &lt;p&gt;     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. &lt;/p&gt; &lt;p&gt;     Quisque bibendum sem ut lacus. Integer dolor ullamcorper libero.     Aliquam rhoncus eros at augue. Suspendisse vitae mauris. &lt;/p&gt;  How do I convert the above to something like this: &lt;p&gt;     Lorem ipsum &lt;span class=&quot;myClass&quot;&gt;dolor&lt;/span&gt; sit amet, consectetuer adipiscing elit. &lt;/p&gt; &lt;p&gt;     Quisque bibendum sem ut lacus. Integer &lt;span class=&quot;myClass&quot;&gt;dolor&lt;/span&gt; ullamcorper     libero. Aliquam rhoncus eros at augue. Suspendisse vitae mauris. &lt;/p&gt;  Is this possible with jQuery? Edit: As  , this is quite possible without jQuery - but I was hoping there might be a special method of jQuery which would let you do selectors on the text itself. I'm already using jQuery heavily on this site, so keeping everything wrapped up in jQuery would make things perhaps a bit more tidy.
32119
I'm trying to use the curl command to access a http url with a exclamation mark (!) in its path. e.g:  curl -v "http://example.org/!287s87asdjh2/somepath/someresource"   the console replies with bash: ... event not found.  What is going on here? and what would be the proper syntax to escape the exclamation mark?
41583
I accidentally, discovered that using | in text mode produces an em dash. I did a quick search, but I could not find a reference where this is noted. I wonder if there is any difference between this and ---? Otherwise, it seems easier to just type one character instead of three.
32741
The  states that:     Since 1.0.4, case insensitive regular expressions can be used by prefixing the pattern with ~*.   And gives the example:  map $uri $myvalue {     /aa                   /mapped_aa;     ~^/aa/(?&lt;suffix&gt;.*)$  $suffix; }   I updated to nginx/1.2.7 to make use of this, and naive regexes work okay, but variables don't. When I try the above syntax I get the error:  nginx: [emerg] pcre_compile() failed: unrecognized character after (?&lt; in "^/aa/(?&lt;suffix&gt;.*)$" at "suffix&gt;.*)$"   I also tried the following syntaxes, but none of them worked:  ~^(.*)$  $1; ~^(.*)$  \1;   but neither of them worked either.  Does anyone know how to get variables to work in regular expressions in HttpMapModule?
9861
How can I use Unicode-aware regular expressions in JavaScript?  For example, there should be something akin to \w that can match any code-point in Letters or Marks category (not just the ASCII ones), and hopefully have filters like [[P*]] for punctuation, etc.
13063
Is it possible to write a regular expression that matches a nested pattern that occurs an unknown number of times? For example, can a regular expression match an opening and closing brace when there are an unknown number of open/close braces nested within the outer braces?  For example:  public MyMethod() {   if (test)   {     // More { }   }    // More { } } // End   Should match:  {   if (test)   {     // More { }   }    // More { } }
66513
Is there a way to debug a regular expression in Python? And I'm not referring to the process of trying and trying till they work :)  Here is how regexes can be debugged in Perl:   use re 'debug';  my $str = "GET http://some-site.com HTTP/1.1"; if($str =~/get\s+(\S+)/i) {     print "MATCH:$1\n"; }   The code above produces the following output on my computer when ran:   Compiling REx "get\s+(\S+)" Final program:    1: EXACTF  (3)    3: PLUS (5)    4:   SPACE (0)    5: OPEN1 (7)    7:   PLUS (9)    8:     NSPACE (0)    9: CLOSE1 (11)   11: END (0) stclass EXACTF  minlen 5 Matching REx "get\s+(\S+)" against "GET http://some-site.com HTTP/1.1" Matching stclass EXACTF  against "GET http://some-site.com HTTP/1.1" (33 chars)    0           |  1:EXACTF (3)    3        |  3:PLUS(5)                                   SPACE can match 1 times out of 2147483647...    4       |  5:  OPEN1(7)    4       |  7:  PLUS(9)                                     NSPACE can match 20 times out of 2147483647...   24       |  9:    CLOSE1(11)   24       | 11:    END(0) Match successful! MATCH:http://some-site.com Freeing REx: "get\s+(\S+)"
32215
I haven't used regular expressions at all, so I'm having difficulty troubleshooting. I want the regex to match only when the contained string is all numbers; but with the two examples below it is matching a string that contains all numbers plus an equals sign like "1234=4321". I'm sure there's a way to change this behavior, but as I said, I've never really done much with regular expressions.  string compare = "1234=4321"; Regex regex = new Regex(@"[\d]");  if (regex.IsMatch(compare)) {      //true }  regex = new Regex("[0-9]");  if (regex.IsMatch(compare)) {      //true }   In case it matters, I'm using C# and .NET2.0.
92309
I have a string:   allPunctuation = '~!@#$%^*()_+|}{":?&gt;&lt;`=;/.,][-\'\\';   This string contains APEX's way of escaping characters so I can include the ' and the \ characters.   When I pass this string into the replaceAll() method I get back an error because the escape characters are not carried over and the regex needs the escape characters. Is there a way around this?  ie: when I system.debug allPunctuation I get back: ~!@#$%^*()_+&#124;}{":?>&lt;`=;/.,][-'\ This clearly doesn't have the escape characters anymore.   My second thought was to utilize the matcher method. Documentation found here:    I am not sure why, but it is returning back a false. To me it seems like it shouldn't be affected by the escape quotes. And legalName has all sorts of punctuation in it.   Pattern NonAlphanumeric = Pattern.compile('[^a-zA-Z0-9 ]'); Matcher matcher = NonAlphanumeric.matcher(legalName); //system.debug(matcher) ---&gt; false   Could someone point me in the right direction?
18468
I'm developing an algorithm to parse a number out of a series of short-ish strings. These strings are somewhat regular, but there's a few different general forms and several exceptions. I'm trying to build a set of regexes that will handle the various forms and exceptions; I'll apply them one after another to see if I get a match.   One of these forms goes something like this:  X (Y) Z   Where:   X is a number I want to capture.  Z is static, pre-defined text. it's basically how I determine whether this particular form is applicable or not. Y is a a string of unknown length and content, surrounded by parenthesis.    Also: Y is optional; it doesn't always appear in a string with Z and X. So, I want to be able to extract the numbers from all of these strings:   10 Z 20 (foo) Z 30 (bar) Z   Right now, I have a regex that will capture the first one:  ([0-9]+) +Z   My problem is that I don't know how to construct a regex that will match a series of characters if and only if they're enclosed in parenthesis. Can this be done in a single regex?
22511
I want to use input from a user as a regex pattern for a search over some text.  It works, but how I can handle cases where user puts characters that have meaning in regex? For example, the user wants to search for Word (s): regex engine will take the (s) as a group.  I want it to treat it like a string &quot;(s)&quot; .  I can run replace on user input and replace the ( with \( and the ) with \) but the problem is I will need to do replace for every possible regex symbol. Do you know some better way ?
65617
I know that Regular expressions are to be used only with characters and strings, but sometimes I find them in the names of files. My question is: are regexes only used with characters or also with filenames?
93649
I'm wondering about the period character . used as a shortcut for the local computer name.  You can use it when logging into Windows 7, for example, to specify that the user account you're entering belongs to the local computer rather than to a domain:  .\MyLocalUserAccount   And you can use it within a Windows Management Instrumentation (WMI) query to indicate that the target is the local computer rather than a remote computer.  You can also use it when working with named pipes to for similar purposes.  However, you cannot use it as the UNC network name for the computer, like this:  \\.\MyShare   Does this character have an official name (e.g. "LocalHostToken") and when and where can it be used for this purpose?
4412
The Python docs say:     re.MULTILINE: When specified, the pattern character '^' matches at the beginning of the string and at the beginning of each line (immediately following each newline)... By default, '^' matches only at the beginning of the string...   So what's going on when I get the following unexpected result?  &gt;&gt;&gt; import re &gt;&gt;&gt; s = """// The quick brown fox. ... // Jumped over the lazy dog.""" &gt;&gt;&gt; re.sub('^//', '', s, re.MULTILINE) ' The quick brown fox.\n// Jumped over the lazy dog.'