These are the factoids for <freenode.net:#regexen>.

factoid_id subject copula predicate history from namespace
11698 eval is <eval <arg>>
Unquoted string "i" may clash with future reserved word at (IRC) line 1. Unquoted string "i" may clash with future reserved word at (IRC) line 1. Unquoted string "echo" may clash with future reserved word at (IRC) line 1. Scalar found where operator expected at (IRC) line 1, near "echo $i" (Do you need to predeclare echo?) Unquoted string "done" may clash with future reserved word at (IRC) line 1. Unquoted string "then" may clash with future reserved word at (IRC) line 1. Unquoted string "fi" may clash with future reserved word at (IRC) line 1. ERROR: Can't modify constant item in scalar assignment at (IRC) line 1, near "0;" syntax error at (IRC) line 1, near "if while" syntax error at (IRC) line 1, near "echo $i" syntax error at (IRC) line 1, near "then printf"
revisions <freenode.net:#regex>
11782 a-z is /[A-z]/ does not mean what you might think. You should use /[A-Za-z]/ or /[a-z]/i, unless you wish to include these characters: [ \ ] ^ _ ` revisions <freenode.net:#regex>
11806 reinfo is http://www.regular-expressions.info/ revisions <freenode.net:#regex>
11963 me-me is <Me-me> I don't know programming languages, just regex. revisions <freenode.net:#regex>
12133 blog is https://firasdib.com/blog/ revisions <freenode.net:#regex>
12238 ​digitok is (*F) revisions <freenode.net:#regex>
12290 r is http://www.regular-expressions.info/rlanguage.html which describes multiple regex flavors for R, including PCRE, POSIX BRE and ERE. revisions <freenode.net:#regex>
12339 enter is Do not use the Enter key as punctuation. Think in complete thoughts, then type. revisions <freenode.net:#regex>
12481 names is http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/ revisions <freenode.net:#regex>
12587 lookaround is http://www.regular-expressions.info/lookaround.html revisions <freenode.net:#regex>
12592 lookahead is <fact lookaround>
Not Available
revisions <freenode.net:#regex>
12593 lookbehind is <fact lookaround>
http://www.regular-expressions.info/lookaround.html
revisions <freenode.net:#regex>
12594 doqnach is Do you really need regex for that? revisions <freenode.net:#regex>
12721 lookarounds is <fact lookaround>
http://www.regular-expressions.info/lookaround.html
revisions <freenode.net:#regex>
12921 strings is You can match common double-quoted strings with "[^\\"]*(?:\\.[^\\"]*)*" which handles "strings \"within\" strings". Replacing the double quotes with single quotes can allow 'this \'string\' to match' if desired. revisions <freenode.net:#regex>
12922 semicolons is Remove all ; (semicolons) except if they're inside a string ("", '', ``). Replace with $1 ("[^\\"\r\n]*(?:\\.[^\\"\r\n]*)*"|'[^\\'\r\n]*(?:\\.[^\\'\r\n]*)*'|`[^\\`]*(?:\\.[^\\`]*)*`)|; revisions <freenode.net:#regex>
12939 url is https://mathiasbynens.be/demo/url-regex revisions <freenode.net:#regex>
13402 parser is Suggested HTML parsers: PHP: DOMDocument, Ruby: Nokogiri, JavaScript: querySelector revisions <freenode.net:#regex>
13403 htmlparser is <fact parser>
Not Available
revisions <freenode.net:#regex>
13417 posix is https://www.regular-expressions.info/posixbrackets.html revisions <freenode.net:#regex>
13749 api is https://github.com/firasdib/Regex101/wiki/API revisions <freenode.net:#regex>
13750 pi is 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964 revisions <freenode.net:#regex>
13802 code is <fact codegen>
Select code generator on the left side of regex101 to view sample code for your language of choice.
revisions <freenode.net:#regex>
13819 vim is https://remram44.github.io/regex-cheatsheet/regex.html, http://vimdoc.sourceforge.net/htmldoc/pattern.html revisions <freenode.net:#regex>
13880 zarthus is <Zarthus> You don't need regex for that. | <Zarthus> Use a parser. | <Zarthus> Keep in mind my regex won't work. revisions <freenode.net:#regex>
13986 timvde is better than jaytea revisions <freenode.net:#regex>
14194 johndoe2 is <JohnDoe2> well either way, here's something you can play with revisions <freenode.net:#regex>
14195 jd2 is <fact johndoe2>
<JohnDoe2> well either way, here's something you can play with
revisions <freenode.net:#regex>
14196 jaytea is striving for timvderfection revisions <freenode.net:#regex>
14198 library is https://regex101.com/library revisions <freenode.net:#regex>
14199 lib is <fact library>
https://regex101.com/library
revisions <freenode.net:#regex>
14227 quiz is https://regex101.com/quiz revisions <freenode.net:#regex>
14234 omrsi is NOT Ouims revisions <freenode.net:#regex>
14242 html is Do NOT regex HTML/XML/JSON! Instead, consider using the appropriate parser in your programming language of choice. (http://bit.ly/1G8p6VH) revisions <freenode.net:#regex>
14243 xml is <fact html>
Do NOT regex HTML/XML/JSON! Instead, consider using the appropriate parser in your programming language of choice. (http://bit.ly/1G8p6VH)
revisions <freenode.net:#regex>
14244 json is <fact html>
Do NOT regex HTML/XML/JSON! Instead, consider using the appropriate parser in your programming language of choice. (http://bit.ly/1G8p6VH)
revisions <freenode.net:#regex>
14302 wiki is https://github.com/firasdib/Regex101/wiki revisions <freenode.net:#regex>
14305 babewatch is With (?=babe) you'll only see them when they're directly in front of you, with (?=.*babe) you'll see them even when they're far away, and with (?<=babe) you'll see them when they're directly behind you. revisions <freenode.net:#regex>
14327 ty is You're welcome! revisions <freenode.net:#regex>
14328 thanks is Of course! revisions <freenode.net:#regex>
14430 the_tick is <The_Tick> I'm not trying to teach anyone anything revisions <freenode.net:#regex>
14623 newlines is <fact newline>
Not Available
revisions <freenode.net:#regex>
14624 davidebyzero is not even hard revisions <freenode.net:#regex>
14629 newline is Match Unix style newlines: \n Match DOS/Windows/Unix style newlines: \r?\n Match all types of newlines: (?:\r?\n|\r) or $\s+?^ in multiline mode Match all newlines and vertical whitespace in Perl/PCRE/Boost: \R revisions <freenode.net:#regex>
14675 groups is Use a (capturing group) if you need to capture a substring. Use a (?:non-capturing group) if you need the functionality of a group, but no capture is required. revisions <freenode.net:#regex>
14677 group is <fact groups>
Use a (capturing group) if you need to capture a substring. Use a (?:non-capturing group) if you need the functionality of a group, but no capture is required.
revisions <freenode.net:#regex>
14730 seen is <echo>
revisions <freenode.net:#regex>
14734 seentot is <echo>
revisions <freenode.net:#regex>
14781 ouims is <+Ouims> 10€ and i'll give you the shortest :: <+Ouims> sorry i accidentally forked the regex revisions <freenode.net:#regex>
14794 precious is https://www.dropbox.com/s/vs6j3f1la0khptw/precious.png revisions <freenode.net:#regex>
14846 kb is <echo>
revisions <freenode.net:#regex>
14847 k is <echo>
revisions <freenode.net:#regex>
14848 b is <echo>
revisions <freenode.net:#regex>
14853 o is <echo>
revisions <freenode.net:#regex>
14854 do is <echo>
revisions <freenode.net:#regex>
14855 v is <echo>
revisions <freenode.net:#regex>
14856 dv is <echo>
revisions <freenode.net:#regex>
14864 ignore is <echo>
revisions <freenode.net:#regex>
14898 snack is *om nom nom* revisions <freenode.net:#regex>
14903 my purpose is <fact ##NULL my purpose <arg>>
You're not allowed to ask me that.
revisions <freenode.net:#regex>
14910 _getarg_perl_array is `eval use Text::ParseWords; my @words = shellwords(`quote d `arg!!); \@words!
["-s","##NULL source","source"]
revisions <freenode.net:#regex>
14911 ln is `compose `eval $a=`fact _getarg_perl_array `arg~~;$s=$a->[0]eq'-s'; @$a=grep{!/-s/}@$a; if(@$a!=2){return "<echo Syntax: ln [-s] existing_factoid new_factoid>"}; ($l,$r)=@$a; return "<fact macro $r is [fact $l [arg]]>" if $s; "<fact $r is <fact $l>>"~~
Stored source is [fact ##NULL source [arg]]
revisions <freenode.net:#regex>
14914 is <echo>
revisions <freenode.net:#regex>
14978 8ball is <8ball <arg>>
Outlook not so good
revisions <freenode.net:#regex>
15017 factoidsurl is `eval use URI::Encode; sub e{URI::Encode::uri_encode$_[0],{encode_reserved=>1}}; $_=`quote d `arg &s!:`arg &c!!; m|^.*?([^.]+\.[^.]+):(.*?)$|; sprintf "https://factoids.perl.bot/%s/%s/list", e($1), e($2)!
https://factoids.perl.bot/libera.chat/%23regex/list
revisions <freenode.net:#regex>
15019 searchurl is `eval use URI::Encode; sub e{URI::Encode::uri_encode$_[0],{encode_reserved=>1}}; $_=`quote d `arg &s!:`arg &c!!; m|^.*?([^.]+\.[^.]+):(.*?)$|; sprintf "https://factoids.perl.bot/%s/%s/search?q=%s", e($1), e($2), e(`quote d `arg!!)!
https://factoids.perl.bot/freenode.net/%23regex/search?q=rehelp
revisions <freenode.net:#regex>
15054 pastebin is <fact paste>
Please use https://bpa.st/ for sharing large amounts of code/data, or https://ideone.com/ to share an executable code sample.
revisions <freenode.net:#regex>
15055 question is How to Ask Questions the Smart Way - http://www.catb.org/~esr/faqs/smart-questions.html revisions <freenode.net:#regex>
15056 questions is <fact question>
How to Ask Questions the Smart Way - http://www.catb.org/~esr/faqs/smart-questions.html
revisions <freenode.net:#regex>
15119 revisionsurl is `eval use URI::Encode; sub e{URI::Encode::uri_encode$_[0],{encode_reserved=>1}}; $_=`quote d `arg &s!\`arg &c!!; m|^.*?([^.]+\.[^.]+)\\(.*?)$|; sprintf "https://factoids.perl.bot/%s/%s/revisions?fact=%s", e($1), e($2), e(`quote d `arg!!)!
Not Available
revisions <freenode.net:#regex>
15169 _be__default is _be_noob or _be_noob revisions <freenode.net:#regex>
15170 be is [eval $str="[fact [8ball [fact _be__get_list [arg]]]]"; $arg=[quote d [arg]]; if ($arg =~ /^\s*a\s+retard\s*$/) {$arg=[arg &n]}; if ($arg =~ /^\s*$/) {$str} else {"<".$arg."> ".$str}]
<Just don't be a retard> How do I parse HTML with regex?
revisions <freenode.net:#regex>
15171 _be__get_list is `eval use JSON::MaybeXS qw/decode_json/; $bel= decode_json `quote d `fact factgrep ^_be_`arg!!!; return `quote d `fact _be__default!! unless (@$bel); @$bel = (@$bel, @$bel); join(', ', @$bel) =~ s/,/ or /r!
_be_noob or _be_noob
revisions <freenode.net:#regex>
15173 _be_noob is How do I parse HTML with regex? revisions <freenode.net:#regex>
15275 codegen is Select code generator on the left side of regex101 to view sample code for your language of choice. revisions <freenode.net:#regex>
15385 bre is POSIX: https://www.regular-expressions.info/posix.html, GNU: https://www.regular-expressions.info/gnu.html revisions <freenode.net:#regex>
15386 ere is <fact bre>
POSIX: https://www.regular-expressions.info/posix.html, GNU: https://www.regular-expressions.info/gnu.html
revisions <freenode.net:#regex>
15402 ip is Sample IPv4 regex: https://regex101.com/r/ZKgWGG/1 | Note: Be aware of the many different valid IP formats: https://blog.dave.tf/post/ip-addr-parsing/ revisions <freenode.net:#regex>
15403 email is http://www.regular-expressions.info/email.html, https://emailregex.com/, https://regex101.com/library?orderBy=MOST_POINTS&search=email revisions <freenode.net:#regex>
15410 qs is https://regex101.com/?regex=&flags=&delimiter=&flavor=&testString=&subst= revisions <freenode.net:#regex>
15429 pcre2 is PCRE2 sandbox - substitution: https://bit.ly/36ax6nh matching: https://tinyurl.com/PCRE2-palindrome client-side substitution and matching: https://kingbird.myphotos.cc/regex/pcre2test.html revisions <freenode.net:#regex>
15480 games is Quiz: https://regex101.com/quiz | Crossword: https://regexcrossword.com/ | Crossword 2: https://jimbly.github.io/regex-crossword/ | Golf: https://alf.nu/RegexGolf | Regex Tuesday: https://callumacrae.github.io/regex-tuesday/ | Regex Koans: https://github.com/frenchroasted/RegexKoans | HackerRank: https://www.hackerrank.com/domains/regex (+code) revisions <freenode.net:#regex>
15489 nfa is https://compiler.org/reason-re-nfa/src/ revisions <freenode.net:#regex>
15499 pcre is http://pcre.org/pcre.txt, http://pcre.org/pcre2.txt revisions <freenode.net:#regex>
15519 balancing-group is https://docs.microsoft.com/en-us/dotnet/standard/base-types/grouping-constructs-in-regular-expressions#balancing_group_definition revisions <freenode.net:#regex>
15561 awk is https://docs.google.com/presentation/d/1l9S_6QB8ES5vrp573Ms578qhSEC0xE_xjazJKNyHoSI revisions <freenode.net:#regex>
15609 paste is Please use https://bpa.st/ for sharing large amounts of code/data, or https://ideone.com/ to share an executable code sample. revisions <freenode.net:#regex>
15618 xregexp is XRegExp adds ES6 compatibility to older browsers. https://github.com/slevithan/xregexp/ revisions <freenode.net:#regex>
15635 re2 is https://github.com/google/re2/wiki/Syntax revisions <freenode.net:#regex>
15653 source is [fact ##NULL source [arg]]
revisions <freenode.net:#regex>
15660 naughtystrings is https://github.com/minimaxir/big-list-of-naughty-strings/blob/master/blns.txt revisions <freenode.net:#regex>
15672 bash is <basheval <arg>>
a↵
revisions <freenode.net:#regex>
15697 testuser is bruh revisions <freenode.net:#regex>
15733 karma is <karma <eval ("<arg>" ne "") ? "<arg>" : "<arg &n>">>
davido has karma of 2
revisions <freenode.net:#regex>
15739 save is <fact link>
Please click Save on the left side of https://regex101.com/ and share your link here. (https://i.ibb.co/68c2YnH/s.png)
revisions <freenode.net:#regex>
15742 bruh is testuser revisions <freenode.net:#regex>
15746 perlbot is dead revisions <freenode.net:#regex>
15754 bruhbot is perlbot revisions <freenode.net:#regex>
15760 ask is Don't ask for permission to ask a question. Don't ask if anyone is here. Just ask your question. revisions <freenode.net:#regex>
15766 forgot is I forgor 💀 revisions <freenode.net:#regex>
15772 eg is Please provide full, real-world examples. If you're too busy to provide good examples, we're too busy to help. revisions <freenode.net:#regex>
15775 bugs is Just because nobody complains, doesn't mean all parachutes are perfect. revisions <freenode.net:#regex>
15781 fake is If you provide fake or incomplete sample text, we'll only be able to provide fake and incomplete regex solutions. revisions <freenode.net:#regex>
15782 go|dfish is <go|dfish> you could just pretend basic doesn't exist, it's better that way revisions <freenode.net:#regex>
15783 github is https://github.com/firasdib/Regex101 revisions <freenode.net:#regex>
15784 git is <fact github>
Not Available
revisions <freenode.net:#regex>
15785 humor is https://xkcd.com/208/, https://xkcd.com/1171/ revisions <freenode.net:#regex>
15788 humour is <fact humor>
https://xkcd.com/208/, https://xkcd.com/1171/
revisions <freenode.net:#regex>
15789 passwords is <fact password>
Don't put arbitrary restrictions on passwords! Use an entropy-based system like zxcvbn (https://github.com/dropbox/zxcvbn), and make sure to use modern hashes (md5 is too old; argon2 is recommended, pbkdf2 or scrypt are acceptable). (https://www.xkcd.com/936/)
revisions <freenode.net:#regex>
15791 python is Python regex module: https://pypi.org/project/regex/ | Online compiler: https://www.online-python.com/ revisions <freenode.net:#regex>
15792 py is <fact python>
Python regex module: https://pypi.org/project/regex/ | Online compiler: https://www.online-python.com/
revisions <freenode.net:#regex>
15793 re101 is You can use https://regex101.com/ to test your regular expressions, for posting examples, and even to view a detailed explanation of your pattern. revisions <freenode.net:#regex>
15794 recursion is https://www.regular-expressions.info/recurse.html (https://www.regular-expressions.info/refrecurse.html) revisions <freenode.net:#regex>
15795 recurse is <fact recursion>
https://www.regular-expressions.info/recurse.html (https://www.regular-expressions.info/refrecurse.html)
revisions <freenode.net:#regex>
15798 \s is \s matches any whitespace character, such as a space or newline. \s is equivalent to [\r\n\t\f\v ], or [\p{Z}\h\v] in unicode mode (/u flag or (*UCP) pattern modifier). revisions <freenode.net:#regex>
15800 tutorial is <fact tutorials>
https://www.regular-expressions.info/tutorial.html, http://www.rexegg.com/, https://regexone.com/, https://youtu.be/ubvSjW6Nyqk
revisions <freenode.net:#regex>
15801 tuts is <fact tutorials>
https://www.regular-expressions.info/tutorial.html, http://www.rexegg.com/, https://regexone.com/, https://youtu.be/ubvSjW6Nyqk
revisions <freenode.net:#regex>
15802 tut is <fact tutorials>
https://www.regular-expressions.info/tutorial.html, http://www.rexegg.com/, https://regexone.com/, https://youtu.be/ubvSjW6Nyqk
revisions <freenode.net:#regex>
15804 xkcd is <fact humor>
https://xkcd.com/208/, https://xkcd.com/1171/
revisions <freenode.net:#regex>
15809 unicode is http://www.regular-expressions.info/refunicode.html, https://www.fileformat.info/info/unicode/category/index.htm revisions <freenode.net:#regex>
15867 ref is http://www.regular-expressions.info/refflavors.html revisions <freenode.net:#regex>
15868 reference is <fact ref> revisions <freenode.net:#regex>
15871 tutorials is https://www.regular-expressions.info/tutorial.html, http://www.rexegg.com/, https://regexone.com/, https://youtu.be/ubvSjW6Nyqk revisions <freenode.net:#regex>
15878 notepad++ is uses Boost (basically PCRE), https://npp-user-manual.org/docs/searching/#regular-expressions revisions <freenode.net:#regex>
15892 re2str is https://onlinestringtools.com/generate-string-from-regex revisions <freenode.net:#regex>
15918 password is Don't put arbitrary restrictions on passwords! Use an entropy-based system like zxcvbn (https://github.com/dropbox/zxcvbn), and make sure to use modern hashes (md5 is too old; argon2 is recommended, pbkdf2 or scrypt are acceptable). (https://www.xkcd.com/936/) revisions <freenode.net:#regex>
15923 help is Please share a https://regex101.com/ link containing your regex and sample data, ask your question, and specify which language/platform you're using. Stay a while, and we'll assist you ASAP. revisions <freenode.net:#regex>
15928 jsonregex is For a PCRE solution for a JSON parser, this may be an acceptable solution: https://regex101.com/r/tA9pM8/1 revisions <freenode.net:#regex>
15956 csv is Care should be used when splitting/parsing CSV (comma-separated) and TSV (tab-separated) files; fields may include "double quotes" where a "" pair of double quotes within are used to represent a double-quote literal. revisions <freenode.net:#regex>
15973 number is `^-?\d+(?:[.]\d+)?(?:[Ee][+-]?\d+)?$` revisions <freenode.net:#regex>
15974 update is Please use "Update Regex" instead of "Save Regex" on regex101 after modifying your pattern, sample text, etc. This makes it easier to switch between revisions and provide you timely support. revisions <freenode.net:#regex>
15993 compare is https://en.wikipedia.org/wiki/Comparison_of_regular_expression_engines revisions <freenode.net:#regex>
16021 xy is You want to do X, but don't know how. You think you can solve it using Y, but don't know how to do that, either. So, you ask about Y in order to solve X, which doesn't make sense. Just ask about X! (More at https://xyproblem.info/) revisions <freenode.net:#regex>
16024 re is `compose `eval use PPR; $x=`quote d `arg!!; ($l, $r) = ($x=~m/((?&PerlSubstitution))\s+(.*)$PPR::GRAMMAR/); $_=$r; s/'/\\'/; sprintf '[eval $x=\'%s\'; $x =~ %s; "output: ".$x]', $_, $l;!!
Compose failed to find a plugin named: a-fA-F0-9
revisions <freenode.net:#regex>
16026 regex is <echo>
revisions <freenode.net:#regex>
16027 date is never got added revisions <freenode.net:#regex>
16039 crlf is (?:\r?\n) can be used to match both Windows and Linux line endings revisions <freenode.net:#regex>
16054 #regex c_comments is To match '//...' line comments and '/*...*/' block comments, see: https://regex101.com/r/41Qebw/28 revisions <freenode.net:#regex>
16056 c_comments is To match '//...' line comments and '/.../' block comments, see: regex101.com/r/41Qebw/28 revisions <freenode.net:#regex>
16086 top is <karmatop <arg>>
c: 21986 notepad: 3296 moritz: 2129
revisions <freenode.net:#regex>
16087 bottom is <karmatop -<arg>>
usage is: top/bottom \d+ karma
revisions <freenode.net:#regex>
16100 tcl is Tcl regex is described on https://wiki.tcl-lang.org/page/Regular+Expression and its syntax described on https://www.tcl-lang.org/man/tcl/TclCmd/regexp.html revisions <freenode.net:#regex>
16101 eggdrop is Eggdrop (https://docs.eggheads.org) regex uses Tcl notation (see !tcl) for its regular expressions: https://www.tcl-lang.org/man/tcl/TclCmd/regexp.html revisions <freenode.net:#regex>
16108 phone is A simple (###) ###-#### phone number validator could be: /^[(]?(\d{3})[) -]*(\d{3})[ -]*(\d{4})$/gm - For anything else, we recommend using libphonenumber or a similar library. revisions <freenode.net:#regex>
16114 discord is Join us in the RegEx101 Discord! https://discord.gg/wUA6F6YqSs revisions <freenode.net:#regex>
16131 lua is Since the Lua regex syntax differs significantly from other flavors, https://gitspartv.github.io/lua-patterns/ may be a good reference. revisions <freenode.net:#regex>
16132 link is Please click Save on the left side of https://regex101.com/ and share your link here. (https://i.ibb.co/68c2YnH/s.png) revisions <freenode.net:#regex>
16160 "future date validation"? i.e. trying to use regex to verify that a given date is in the future, not the present or past? revisions <freenode.net:#regex>
16167 relay101 is Messages are bridged between the RexEx101 Discord channel https://discord.gg/wUA6F6YqSs and IRC. The relay101 bot prefixes each message with the writer's nick. revisions <freenode.net:#regex>
16172 debug is <fact debugger>
Select regex debugger on the left side of https://regex101.com/ (PCRE mode only) to see the step-by-step process of your regex being matched against your data.
revisions <freenode.net:#regex>
16173 debugger is Select regex debugger on the left side of https://regex101.com/ (PCRE mode only) to see the step-by-step process of your regex being matched against your data. revisions <freenode.net:#regex>