On Mon, 02 Nov 2015 22:17:49 -0500, Seymore4Head wrote: > On Mon, 2 Nov 2015 20:42:37 -0600, Tim Chase > <python.l...@tim.thechases.com> wrote: > >>On 2015-11-02 20:09, Seymore4Head wrote:
>>> How do I make a regular expression that returns true if the end of the >>> line is an asterisk >>Why use a regular expression? > Because that is the part of Python I am trying to learn at the moment. The most important thing to learn about regular expressions is when to use them and when not to use them. Returning true if the last character in a string is an asterisk is almost certainly a brilliant example of when not to use a regular expression. Here are some timings I tested: #!/usr/bin/python import re import timeit patt = re.compile("\*$") start_time = timeit.default_timer() for i in range(1000000): x = re.match("\*$", "test 1") elapsed = timeit.default_timer() - start_time print "re, false", elapsed start_time = timeit.default_timer() for i in range(1000000): x = re.match("\*$", "test *") elapsed = timeit.default_timer() - start_time print "re, true", elapsed start_time = timeit.default_timer() for i in range(1000000): x = patt.match("test 1") elapsed = timeit.default_timer() - start_time print "compiled re, false", elapsed start_time = timeit.default_timer() for i in range(1000000): x = patt.match("test *") elapsed = timeit.default_timer() - start_time print "compiled re, true", elapsed start_time = timeit.default_timer() for i in range(1000000): x = "test 1"[-1] == "*" elapsed = timeit.default_timer() - start_time print "char compare, false", elapsed start_time = timeit.default_timer() for i in range(1000000): x = "test *"[-1] == "*" elapsed = timeit.default_timer() - start_time print "char compare, true", elapsed RESULTS: re, false 2.4701731205 re, true 2.42048001289 compiled re, false 0.875837087631 compiled re, true 0.876382112503 char compare, false 0.26283121109 char compare, true 0.263465881348 The compiled re is about 3 times as fast as the uncompiled re. The character comparison is about 3 times as fast as the compiled re. -- Denis McMahon, denismfmcma...@gmail.com -- https://mail.python.org/mailman/listinfo/python-list