`

正则表达式比startswith快是错的

阅读更多
某君曾云,正则表达式比startswith速度快,实验了一下发现根本是无稽之谈。

import re
from datetime import datetime
p = re.compile("^job:.*")

t1 = datetime.now()
for i in range(1, 100000):
    re.match(p, "job:1241234")
t2 = datetime.now()
print t2 - t1
for i in range(1, 100000):
    "job:1234234".startswith("job:")
t3 = datetime.now()
print t3 - t2


结果
0:00:00.375000
0:00:00.047000
分享到:
评论

相关推荐

    java 字符串 正则表达式 详细实例代码

    - `startsWith(String prefix)`和`endsWith(String suffix)`:检查字符串是否以指定前缀或后缀开始或结束。 3. **字符串生成器StringBuilder和StringBuffer** - 当需要频繁修改字符串时,应使用`StringBuilder`或...

    js正则表达式资料

    13. **JavaScript中的正则扩展**:如`String.prototype.trim()`、`String.prototype.startsWith()`和`String.prototype.endsWith()`等方法,虽然不是正则表达式的一部分,但常与正则配合使用。 14. **高级用法**:...

    正则表达式

    这样,引用就不只是帮助你输入正则表达式的重复部分的快 捷方式了,它还实施了一条规约,那就是一个字符串各个分离的部分包含的是完全相同的字符.例如:下面的正则表达式匹配的就是位于单引号或双引号之内的所有字 ...

    java笔记之正则表达式

    这段代码利用了正则表达式`\\d{5,15}`匹配5到15位的数字字符串,`startsWith("0")`则检查是否以0开头。 通过这些基本操作和示例,我们可以看出正则表达式在处理字符串时的强大功能。然而,理解和编写复杂的正则...

    python零基础学习篇数据爬虫技巧-4正则表达式.zip

    在Python的世界里,正则表达式(Regular Expression)是一种强大的文本处理工具,它能用于查找、替换和提取符合特定模式的字符串。对于数据爬虫来说,正则表达式是不可或缺的一部分,因为它能帮助我们从复杂的网页源...

    C#字符串和正则表达式参考手册

    C#还提供了一些操作字符串的方法,如`IndexOf()`和`LastIndexOf()`用于查找子字符串的位置,`Contains()`检查字符串是否包含特定子串,`StartsWith()`和`EndsWith()`判断字符串是否以指定前缀或后缀开始或结束。...

    js正则表达式

    1. JavaScript的`String`对象提供了很多与正则表达式相关的内置方法,如`trim()`、`startsWith()`、`endsWith()`等,它们在实际开发中非常实用。 2. 使用在线正则表达式测试工具,如Regex101或RegExr,可以帮助...

    优质精品课件 复旦大学Python基础教程 小白也能学懂的课程 由浅入深 讲解清晰 第4章 字符串与正则表达式 (共78页).

    例如,`len()`函数可以返回字符串的长度,`str.lower()`和`.upper()`方法可以将字符串转换为小写或大写,`str.startswith()`和`.endswith()`用于检查字符串是否以特定字符或字符串开头或结尾。 字符串操作的一个...

    JS字符串和正则表达式.pdf

    JavaScript中的字符串和正则表达式是编程中两个重要的概念,特别是在网页开发中不可或缺。字符串是表示文本的数据类型,而正则表达式则是用于处理字符串的强大工具,常用于数据验证、搜索和替换等操作。 首先,我们...

    Java正则表达式使用

    } else if (line.startsWith("//") || (line.startsWith("/*") && line.endsWith("*/"))) { commentLines++; } else { normalLines++; } } } catch (FileNotFoundException e) { e.printStackTrace(); } ...

    Python-Python36及以上易懂的正则表达式

    在Python编程语言中,正则表达式(Regular Expression,简称RE)是一种强大的文本处理工具,用于处理字符串。Python 3.6及更高版本对正则表达式的支持更加完善,提供了丰富的函数和模块来帮助开发者进行复杂的文本...

    Tedu正则表达式与Object与自动装箱与拆箱

    - `startsWith()` / `endsWith()`:检查字符串是否以特定子串开始或结束。 - `charAt()`:获取指定索引处的字符。 - `indexOf()` / `lastIndexOf()`:查找子串第一次或最后一次出现的位置。 - `substring()`:...

    一个正则表达式导致CPU 利用率居高不下

    比如,可以将大的正则表达式拆分成多个较小的部分,利用Java的String类提供的方法如contains、startsWith等进行先期的字符串格式校验。此外,对正则表达式进行性能测试,确保它在最坏情况下的运行时间是可以接受的。...

    compile-time-regular-expressions:与编译时PCRE(几乎)兼容的正则表达式匹配器

    编译时正则表达式v3 快速的编译时正则表达式,支持在编译时或运行时进行匹配/搜索/捕获。 您可以使用目录single-header的单头版本。 可以使用make single-header重新生成此make single-header 。 如果使用cmake,则...

    假如正则从来没来过,我们该如何去匹配一个字符串

    这种方法虽然比正则表达式更复杂,但能解决一些基本的匹配需求。 再者,可以使用字符串搜索算法,如KMP(Knuth-Morris-Pratt)算法或者Boyer-Moore算法。这些算法通过预处理模式串来提高搜索效率,减少了不必要的...

    javascript实现的一个最简的正则引擎

    return input.startsWith(regex.value) ? { matched: true, remaining: input.slice(1) } : null; } ``` 处理量词: ```javascript if (regex.type === 'quantifier') { let result; for (let i = 0; i ; i++) ...

    正则表达式(regular)知识(整理)

    对于大型文本处理,正则表达式可以结合其他字符串处理技术,如`str.split()`,`str.startswith()`等,以达到最佳效果。 总之,正则表达式是编程中处理字符串的强大工具,熟练掌握其语法和使用方法,能极大地提升...

    当ES6遇上字符串和正则表达式

    console.log(mes.startsWith("hello")); // true console.log(mes.endsWith("!")); // false console.log(mes.includes("o")); // true ``` 需要注意的是,如果不指定第二个参数,`endWith()`通常从字符串末尾开始...

Global site tag (gtag.js) - Google Analytics