<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx</link><description>You probably intuitively understood concatenation already, but let me define it anyway.
 
 
 Definition 5 : 
The concatenation of two strings w and u (over the same alphabet) makes a string consisting of the 
sequence of every element in w followed</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>Regular Expression:  The Theory behind it!</title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#543290</link><pubDate>Sat, 04 Mar 2006 02:29:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:543290</guid><dc:creator>Dan Sellers's WebLog</dc:creator><description>When it comes to validating input regular expression becomes a very important part of your security plan.&amp;amp;amp;nbsp;...&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=543290" width="1" height="1"&gt;</description></item><item><title>Synesthesia &amp;raquo; Links Roundup for 2006-02-21</title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#536723</link><pubDate>Wed, 22 Feb 2006 12:18:10 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:536723</guid><dc:creator>Synesthesia » Links Roundup for 2006-02-21</dc:creator><description>PingBack from &lt;a rel="nofollow" target="_new" href="http://www.synesthesia.co.uk/blog/archives/2006/02/22/links-24/"&gt;http://www.synesthesia.co.uk/blog/archives/2006/02/22/links-24/&lt;/a&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=536723" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#528884</link><pubDate>Thu, 09 Feb 2006 23:53:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:528884</guid><dc:creator>Andy</dc:creator><description>Shawn Cheng:&lt;br /&gt;&lt;br /&gt;If a language L does not even have the empty string, then any concatenation with L could have no possible strings.&lt;br /&gt;&lt;br /&gt;You could change your suggested example to this:&lt;br /&gt;&lt;br /&gt;S = {a, b}&lt;br /&gt;L = {e}&lt;br /&gt;K = {e, b, bb, bbb, bbbb, ...}&lt;br /&gt;&lt;br /&gt;In that case, it is true that LK = K&lt;br /&gt;(LK = {w in S* such that w has the empty string followed by any number of bs})&lt;br /&gt;&lt;br /&gt;If, however, &amp;nbsp;L = {}, then LK = {}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Unless, of course, I'm wrong.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=528884" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#510568</link><pubDate>Sun, 08 Jan 2006 18:50:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:510568</guid><dc:creator>Shawn Cheng</dc:creator><description>Started to read this great series!&lt;br&gt;&lt;br&gt;May I revise the example under the definition 6 a little bit to become the following:&lt;br&gt;&lt;br&gt;S = {b} &lt;br&gt;L = {} &lt;br&gt;K = {e, b, bb, bbb, bbbb, …} &lt;br&gt;&lt;br&gt;then &lt;br&gt;&lt;br&gt;LK = {w in S* such that w has zero number of as followed by any number of bs} &lt;br&gt;&lt;br&gt;then, we have LK = K. Agree? If yes, then the paragraph before the example is wrong.&lt;br&gt;&lt;br&gt;Please correct me.&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=510568" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#509485</link><pubDate>Thu, 05 Jan 2006 05:19:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:509485</guid><dc:creator>Eric Lippert</dc:creator><description>Yes, this would be an example of our more compact syntax.  Clearly {e}* = {e} U {ee} U {eee} ... = {e}, so {e}* = {e}, so e*=e.&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=509485" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#509477</link><pubDate>Thu, 05 Jan 2006 05:06:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:509477</guid><dc:creator>Matt</dc:creator><description>Good writing.  So, based on what you say about the empty string, is it true that&lt;br&gt;&lt;br&gt;e* = e&lt;br&gt;&lt;br&gt;???&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=509477" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#497102</link><pubDate>Sat, 26 Nov 2005 08:31:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:497102</guid><dc:creator>Rob Kennedy</dc:creator><description>Sembol,&lt;br&gt;&lt;br&gt;The Kleene closure was definition 3, from last week:&lt;br&gt;&lt;br&gt;&lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/ericlippert/archive/2005/11/18/493482.aspx"&gt;http://blogs.msdn.com/ericlippert/archive/2005/11/18/493482.aspx&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=497102" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#497065</link><pubDate>Sat, 26 Nov 2005 03:53:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:497065</guid><dc:creator>sebmol</dc:creator><description>I've been reading your posts but am wondering if you actually explained what the Kleene Closure is?&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=497065" width="1" height="1"&gt;</description></item><item><title>re: Regular Expressions From Scratch, Part Three: Concatenation </title><link>http://blogs.msdn.com/b/ericlippert/archive/2005/11/25/regular-expressions-from-scratch-part-three-concatenation.aspx#497060</link><pubDate>Sat, 26 Nov 2005 02:58:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:497060</guid><dc:creator>Derek</dc:creator><description>I noticed that no one had commented on the last RegEx post, or this one, and felt that I should speak up so you know at least one person is reading.&lt;br&gt;&lt;br&gt;I'm interested in seeing more of this, and I'm sure plenty of others are, too.  I like seeing experienced developers put together in-depth articles/tutorials/whatever-you-want-to-call-them.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=497060" width="1" height="1"&gt;</description></item></channel></rss>