标签: split

如何迭代字符串的单词?

我正在尝试迭代字符串的单词.

可以假设该字符串由用空格分隔的单词组成.

请注意,我对C字符串函数或那种字符操作/访问不感兴趣.另外,请在答案中优先考虑优雅而不是效率.

我现在最好的解决方案是:

#include <iostream>
#include <sstream>
#include <string>

using namespace std;

int main()
{
    string s = "Somewhere down the road";
    istringstream iss(s);

    do
    {
        string subs;
        iss >> subs;
        cout << "Substring: " << subs << endl;
    } while (iss);
}
Run Code Online (Sandbox Code Playgroud)

有没有更优雅的方式来做到这一点?

c++ string split

2895
推荐指数
43
解决办法
214万
查看次数

如何将列表拆分为大小均匀的块?

我有一个任意长度的列表,我需要将它分成相同大小的块并对其进行操作.有一些明显的方法可以做到这一点,比如保留一个计数器和两个列表,当第二个列表填满时,将它添加到第一个列表并清空下一轮数据的第二个列表,但这可能非常昂贵.

我想知道是否有人对任何长度的列表都有一个很好的解决方案,例如使用生成器.

我一直在寻找有用的东西,itertools但我找不到任何明显有用的东西.但是可能会错过它.

相关问题:在块中迭代列表的最"pythonic"方法是什么?

python split list chunks

2068
推荐指数
40
解决办法
84万
查看次数

如何在Bash中的分隔符上拆分字符串?

我把这个字符串存储在一个变量中:

IN="bla@some.com;john@home.com"
Run Code Online (Sandbox Code Playgroud)

现在我想通过;分隔符拆分字符串,以便我有:

ADDR1="bla@some.com"
ADDR2="john@home.com"
Run Code Online (Sandbox Code Playgroud)

我不一定需要ADDR1ADDR2变量.如果它们是阵列的元素甚至更好.


根据以下答案的建议,我最终得到了以下内容,这就是我所追求的:

#!/usr/bin/env bash

IN="bla@some.com;john@home.com"

mails=$(echo $IN | tr ";" "\n")

for addr in $mails
do
    echo "> [$addr]"
done
Run Code Online (Sandbox Code Playgroud)

输出:

> [bla@some.com]
> [john@home.com]
Run Code Online (Sandbox Code Playgroud)

有一个涉及设置Internal_field_separator(IFS)的解决方案;.我不确定该答案发生了什么,你如何重置IFS为默认值?

RE:IFS解决方案,我试过这个并且它可以工作,我保持旧的IFS然后恢复它:

IN="bla@some.com;john@home.com"

OIFS=$IFS
IFS=';'
mails2=$IN
for x in $mails2
do
    echo "> [$x]"
done

IFS=$OIFS
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我试过的时候

mails2=($IN)
Run Code Online (Sandbox Code Playgroud)

我只是在循环打印时得到第一个字符串,没有括号围绕$IN它工作.

bash shell scripting split

1885
推荐指数
22
解决办法
204万
查看次数

在.NET中的换行符上拆分字符串的最简单方法?

我需要在.NET中将字符串拆分为换行符,我知道拆分字符串的唯一方法是使用Split方法.但是,这不允许我(轻松)拆分换行符,那么最好的方法是什么?

.net c# string split

755
推荐指数
9
解决办法
50万
查看次数

将逗号分隔的字符串转换为数组

我有一个逗号分隔的字符串,我想转换成一个数组,所以我可以循环它.

有内置的东西吗?

例如,我有这个字符串

var str = "January,February,March,April,May,June,July,August,September,October,November,December";
Run Code Online (Sandbox Code Playgroud)

现在想用逗号分割它并存储在Array对象中

javascript string split

688
推荐指数
11
解决办法
101万
查看次数

在Swift中将String拆分为数组?

说我在这里有一个字符串:

var fullName: String = "First Last"
Run Code Online (Sandbox Code Playgroud)

我想在白色空间上拆分字符串,并将值分配给它们各自的变量

var fullNameArr = // something like: fullName.explode(" ") 

var firstName: String = fullNameArr[0]
var lastName: String? = fullnameArr[1]
Run Code Online (Sandbox Code Playgroud)

此外,有时用户可能没有姓氏.

arrays string split ios swift

653
推荐指数
23
解决办法
49万
查看次数

将字符串拆分为具有多个单词边界分隔符的单词

我认为我想做的是一项相当普遍的任务,但我在网上找不到任何参考.我有带标点符号的文字,我想要一个单词列表.

"Hey, you - what are you doing here!?"
Run Code Online (Sandbox Code Playgroud)

应该

['hey', 'you', 'what', 'are', 'you', 'doing', 'here']
Run Code Online (Sandbox Code Playgroud)

但是Python str.split()只能使用一个参数,所以在用空格分割之后,我所有的单词都带有标点符号.有任何想法吗?

python string split

631
推荐指数
12
解决办法
63万
查看次数

C#按另一个字符串拆分字符串

我一直在使用这种Split()方法来分割字符串,但这只有在你用字符分割字符串时才会起作用.有没有办法拆分string,另一个字符串是按参数拆分?我已经尝试将分割器转换为字符数组,没有运气.

换句话说,我想分开string:

THExxQUICKxxBROWNxxFOX

by xx,并返回一个值为的数组:

THE,QUICK,BROWN,FOX

.net c# string split

630
推荐指数
8
解决办法
44万
查看次数

在Bash中将字符串拆分为数组

在Bash脚本中,我想将一行分成几部分并将它们存储在一个数组中.

这条线:

Paris, France, Europe
Run Code Online (Sandbox Code Playgroud)

我想将它们放在这样的数组中:

array[0] = Paris
array[1] = France
array[2] = Europe
Run Code Online (Sandbox Code Playgroud)

我想用简单的代码,命令的速度无关紧要.我该怎么做?

arrays bash split

577
推荐指数
12
解决办法
79万
查看次数

在Vim中快速从垂直分割切换到水平分割

如何在Vim中将当前窗口从水平分割切换为垂直分割,反之亦然?

我偶然做到了,但我再也找不到钥匙了.

vim split

575
推荐指数
8
解决办法
13万
查看次数

标签 统计

split ×10

string ×6

.net ×2

arrays ×2

bash ×2

c# ×2

python ×2

c++ ×1

chunks ×1

ios ×1

javascript ×1

list ×1

scripting ×1

shell ×1

swift ×1

vim ×1