标签: startswith

如何检查字符串"StartsWith"是否是另一个字符串?

我如何String.StartsWith在JavaScript中编写等效的C#?

var haystack = 'hello world';
var needle = 'he';

haystack.startsWith(needle) == true
Run Code Online (Sandbox Code Playgroud)

注意:这是一个老问题,正如评论中指出的ECMAScript 2015(ES6)引入了该.startsWith方法.但是,在撰写此更新时(2015年),浏览器支持还远未完成.

javascript string startswith

1660
推荐指数
11
解决办法
92万
查看次数

如何检查C++ std :: string是否以某个字符串开头,并将子字符串转换为int?

如何在C++中实现以下(Python伪代码)?

if argv[1].startswith('--foo='):
    foo_value = int(argv[1][len('--foo='):])
Run Code Online (Sandbox Code Playgroud)

(例如,如果argv[1]--foo=98,则foo_value98.)

更新:我对调查Boost犹豫不决,因为我只是想对一个简单的小命令行工具进行一个非常小的改动(我宁愿不必学习如何链接并使用Boost作为一个小的更改).

c++ string parsing substring startswith

213
推荐指数
17
解决办法
26万
查看次数

如何在Ruby中查找字符串是否以其他字符串开头?

如果一个字符串在Ruby(没有rails)中以另一个字符串开头的最佳方法是什么?

ruby string startswith

146
推荐指数
3
解决办法
9万
查看次数

为什么"abcd".StartsWith("")返回true?

标题是整个问题.有人能告诉我为什么会这样吗?

c# java startswith

83
推荐指数
8
解决办法
2万
查看次数

如何检查字符串是否以C中的另一个字符串开头?

startsWith(str_a, str_b)标准C库中有类似的东西吗?

它应该指向两个以nullbytes结尾的字符串,并告诉我第一个字符串是否也完全出现在第二个字符串的开头.

例子:

"abc", "abcdef" -> true
"abcdef", "abc" -> false
"abd", "abdcef" -> true
"abc", "abc"    -> true
Run Code Online (Sandbox Code Playgroud)

c string comparison startswith

73
推荐指数
5
解决办法
6万
查看次数

R是否具有像python一样的开头或结尾的功能?

正在寻找名称以某些子字符串开头的预测变量,找不到任何类似的函数.

python string r startswith ends-with

62
推荐指数
4
解决办法
5万
查看次数

为什么字符串的开头慢于?

令人惊讶的是,我发现startswith速度比in:

In [10]: s="ABCD"*10

In [11]: %timeit s.startswith("XYZ")
1000000 loops, best of 3: 307 ns per loop

In [12]: %timeit "XYZ" in s
10000000 loops, best of 3: 81.7 ns per loop
Run Code Online (Sandbox Code Playgroud)

众所周知,in操作需要搜索整个字符串,startswith只需要检查前几个字符,所以startswith应该更有效率.

什么时候s足够大,startswith速度更快:

In [13]: s="ABCD"*200

In [14]: %timeit s.startswith("XYZ")
1000000 loops, best of 3: 306 ns per loop

In [15]: %timeit "XYZ" in s
1000000 loops, best of 3: 666 ns per loop
Run Code Online (Sandbox Code Playgroud)

所以看起来调用 …

python cpython startswith python-2.7 python-internals

55
推荐指数
1
解决办法
3336
查看次数

要检查的正则表达式以http://,https://或ftp://开头

我制定一个正则表达式来检查,如果一个单词开头http://https://或者ftp://,我的代码如下,

     public static void main(String[] args) {
    try{
        String test = "http://yahoo.com";
        System.out.println(test.matches("^(http|https|ftp)://"));
    } finally{

    }
}
Run Code Online (Sandbox Code Playgroud)

它打印false.我还检查了在Regex上发布的stackoverflow,以测试字符串是否以http://或https://开头

正则表达式似乎是正确的,但为什么它不匹配?我甚至尝试^(http|https|ftp)\://^(http|https|ftp)\\://

java regex startswith

47
推荐指数
3
解决办法
11万
查看次数

为什么startwith比切片慢

为什么执行startwith比切片慢?

In [1]: x = 'foobar'

In [2]: y = 'foo'

In [3]: %timeit x.startswith(y)
1000000 loops, best of 3: 321 ns per loop

In [4]: %timeit x[:3] == y
10000000 loops, best of 3: 164 ns per loop
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,即使包括计算长度,切片仍然显得更快:

In [5]: %timeit x[:len(y)] == y
1000000 loops, best of 3: 251 ns per loop
Run Code Online (Sandbox Code Playgroud)

注意:此行为的第一部分在Python for Data Analysis(第3章)中有说明,但没有提供解释.

.

如果有用:这是C代码startswith ; 这是输出dis.dis:

In [6]: import dis

In [7]: dis_it = lambda …
Run Code Online (Sandbox Code Playgroud)

python startswith

47
推荐指数
4
解决办法
5407
查看次数

不区分大小写的字符串以Python开头

以下是我如何检查是否mystring以某个字符串开头:

>>> mystring.lower().startswith("he")
True
Run Code Online (Sandbox Code Playgroud)

问题是mystring很长(数千个字符),所以lower()操作需要很多时间.

问题:有更有效的方法吗?

我不成功的尝试:

>>> import re;
>>> mystring.startswith("he", re.I)
False
Run Code Online (Sandbox Code Playgroud)

python string performance startswith case-insensitive

42
推荐指数
3
解决办法
3万
查看次数