相关疑难解决方法(0)

Python有一个字符串'contains'子串方法吗?

我正在寻找Python中的一个string.containsstring.indexof方法.

我想要做:

if not somestring.contains("blah"):
   continue
Run Code Online (Sandbox Code Playgroud)

python string substring contains

3601
推荐指数
10
解决办法
386万
查看次数

检查字符串是否包含子字符串

如何使用Perl检查给定字符串是否包含某个子字符串?

更具体地说,我想看看s1.domain.com给定的字符串变量中是否存在.

string perl string-matching

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

如何在perl6中找到regexp的匹配数?

在Perl 5中我们可以写

my @things = $text =~ /thing/g;
Run Code Online (Sandbox Code Playgroud)

$things在标量上下文是不重叠的子串出现的次数thing字符串$text.

在Perl 6中如何做到这一点?

regex perl6

7
推荐指数
2
解决办法
151
查看次数

Perl 6:检查元素是否在列表中的最佳方法是什么?

假设我有一个大数组,@stuff和a $thing,我想知道是否$thing@stuff.Perl 6中最好的方法是什么?而"最好"的意思是:惯用,可读,高效; 不一定按顺序排列.

实际上有两个独立的案例.一个是你必须为不同的$things 做很多检查的地方,另一个是你只做一次或几次的地方.

让我们先来看第一个案例.我想我知道(或者)正确答案.

my $set-of-stuff = set @stuff;
for @whatever -> $thing {
    do-something-with($thing) if $thing ? $set of stuff;
}
Run Code Online (Sandbox Code Playgroud)

实际上你可以跳过第一行并简单地说... if $thing ? @stuff,但是几乎肯定会有更差的性能,因为每次都会创建一个集合.

但现在第二种情况,我只有一个$thing要检查.当然,上面的解决方案是有效的,但创建集合只是为了检查一次,似乎需要很多开销.捷径

do-something-with($thing) if $thing ? @stuff;
Run Code Online (Sandbox Code Playgroud)

这里更有意义,因为我们只称它一次.但是,我们仍然需要为一次使用创建一个集合.

更传统的是:

do-something-with($thing) if @stuff.grep($thing);
Run Code Online (Sandbox Code Playgroud)

或者可能更快:

do-something-with($thing) if @stuff.first($thing);
Run Code Online (Sandbox Code Playgroud)

但这似乎不那么惯用,当然第二个不太可读$thing ? @stuff.

我认为没有智能匹配解决方案,对吧?当然这不起作用:

do-something-with($thing) if $thing ~~ @stuff;
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

perl6

6
推荐指数
1
解决办法
295
查看次数

使用Perl6散列键定义与存在

我正在从Perl5学习Perl6.

我正在查看副词:exists https://docs.perl6.org/type/Hash#:exists但是没有:defined副词

但我很担心,因为perl5 exists与&之间有区别defined:存在和定义之间有什么区别?

我怎样才能在Perl6中做这样的事情?

if (defined $hash{key}) {
   $hash{key}++;
} else {
   $hash{key} = 1;
}
Run Code Online (Sandbox Code Playgroud)

perl6

5
推荐指数
2
解决办法
160
查看次数

标签 统计

perl6 ×3

string ×2

contains ×1

perl ×1

python ×1

regex ×1

string-matching ×1

substring ×1