首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从可能包含逗号或空格的字符串创建标记数组

,可以通过以下步骤实现:

  1. 首先,将字符串按照逗号或空格进行分割,得到一个字符串数组。
  2. 创建一个空的标记数组,用于存储每个字符串的标记。
  3. 遍历字符串数组,对于每个字符串进行处理:
    • 如果字符串不包含逗号或空格,则将其作为一个标记存入标记数组。
    • 如果字符串包含逗号或空格,则将其按照逗号或空格进行分割,得到一个子字符串数组。
    • 遍历子字符串数组,将每个子字符串作为一个标记存入标记数组。
  • 返回标记数组作为结果。

以下是一个示例的JavaScript代码实现:

代码语言:txt
复制
function createTokenArray(str) {
  var strArray = str.split(/[,\s]+/); // 使用正则表达式分割字符串
  var tokenArray = [];

  for (var i = 0; i < strArray.length; i++) {
    var token = strArray[i];

    if (token.indexOf(',') === -1 && token.indexOf(' ') === -1) {
      tokenArray.push(token);
    } else {
      var subArray = token.split(/[,\s]+/);
      for (var j = 0; j < subArray.length; j++) {
        tokenArray.push(subArray[j]);
      }
    }
  }

  return tokenArray;
}

var str = "apple, banana, orange apple banana,orange";
var tokens = createTokenArray(str);
console.log(tokens);

这段代码将字符串 "apple, banana, orange apple banana,orange" 分割成标记数组 ["apple", "banana", "orange", "apple", "banana", "orange"]。你可以根据实际需求进行修改和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SQL函数 JSON_ARRAY

描述 Json_array接受表达式(更常见)逗号分隔表达式列表,并返回包含这些值JSON数组。Json_array可以在SELECT语句中与其他类型SELECT-Items结合使用。...返回JSON数组列被标记为表达式(默认情况下);可以为JSON_ARRAY指定列别名。 选择模式和归类 当前%SelectMode属性确定返回JSON数组格式。...通过更改Select Mode,所有Date和%List元素都以该Select Mode格式字符串包含在JSON数组中。...%SQLUPPER(JSON_ARRAY(f1,f2))在JSON数组之前插入一个空格,而不是在数组元素之前插入一个空格;因此它不会强制将数字解析为字符串。...JSON数组中不包括占位符。这可能会导致JSON数组具有不同数量元素。

3.8K20
  • Python 字符串操作

    字符串是 Python 中最常用数据类型。我们可以使用引号(‘”)来创建字符串创建字符串很简单,只要为变量分配一个值即可。...解码函数 Python有时会将字符串数据表示为原始二进制数组,而非字符串,尤其是当数据来自外部源(外部文件、数据库Web)时。Python使用符号b来标识二进制数组。...解码函数将二进制数组转换为字符串反之: 函数 说明 decode() 将二进制数组转换为字符串 encode() 将字符串转换为二进制数组 许多Python函数都需要将二进制数据转换为字符串,然后再做处理...) 经过这些删除操作后,得到可能会是一个空字符串!...分割函数 字符串通常包含多个标记符,用空格、冒号和逗号这样分隔符分割。函数split(delim=’’)使用delim作为分隔符,将字符串s分割为子字符串组成一个列表。

    90510

    Numpy 修炼之道 (12)—— genfromtxt函数

    ,各个条目不会被删除前导尾随空格。...如果列具有名称,我们还可以通过将其名称作为字符串序列逗号分隔字符串形式,将其名称指定给usecols参数来选择要导入列: >>> data = "1 2 3\n4 5 6" >>> np.genfromtxt...因此,我们可能需要确保字段名称不包含任何空格无效字符,或者不符合标准属性名称(例如sizeshape),这将会混淆解释器。...missing_values 默认情况下,任何空字符串标记为缺少。我们还可以考虑更复杂字符串,例如"N/A""???"以表示丢失无效数据。...missing_values参数接受三种类型值: 一个字符串逗号分隔字符串字符串将用作所有列缺少数据标记 字符串序列 在这种情况下,每个项目按顺序与列相关联。

    9.7K40

    ElasticSearch权威指南学习(映射和分析)

    全文文本,另一个角度来说是文本化数据,比如一篇推文(Twitter文章)邮件正文。...“可搜索性”“查全率” 字符过滤器 首先字符串经过字符过滤器(character filter),它们工作是在标记化前处理字符串。...一个简单分词器(tokenizer)可以根据空格逗号将单词分开 标记过滤 最后,每个词都通过所有标记过滤(token filters),它可以修改词(例如将"Quick"转为小写),去掉词(例如停用词像...映射 为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成全文本(Full-text)精确字符串值,Elasticsearch需要知道每个字段里面都包含了什么类型。...任何一个字段可以包含零个、一个多个值,同样对于全文字段将被分析并产生多个词。 言外之意,这意味着数组中所有值必须为同一类型。你不能把日期和字符窜混合。

    1.1K10

    JavaScript中ES7ES8ES9ES10

    () 方法用来判断一个数组是否包含一个指定值,根据情况,如果包含则返回 true,否则返回false。...像它们名字那样,这几个函数主要目的就是填补字符串首部和尾部,为了使得到结果字符串长度能达到给定长度。你可以通过特定字符,或者字符串,或者默认空格填充它。...第二个参数是可选 padString(填充字符),一个用于填充到源字符串字符串。默认值是空格。...3.String.trimStart() & String.trimEnd() 有两种新String方法可从字符串中删除空格: trimStart() 方法字符串开头删除空格。...trimEnd() 方法字符串末尾删除空格。 4.Symbol.Description 当创建符号时,可以提供一个字符串作为描述。在ES10中,有一个获取描述访问器。

    4.2K40

    linux实战(一)

    /[Mm]y/  匹配包含Mymy行  [^]  匹配不在指定字符组内任一字符 /[^Mm]y/  匹配包含y,但y之前那个字符不是Mm行  ....      ...保存已匹配字符      1,20s/youyouself/\1r/  标记元字符之间模式,并将其保存为标签1,之后可以使用\1来引用它。最多可以定义9个标签,左边开始编号,最左边是第一个。...$ sed -n '5,/^test/p' example 打印第五行开始到第一个包含以test开始行之间所有行。...字符串必须用双引号引用,参数用逗号分隔。如果没有逗号,参数就串联在一起而无法区分。这里,逗号作用与输出文件分隔符作用是一样,只是后者是空格而已。...ARGV 包含命令行参数数组。 CONVFMT 数字转换格式(默认值为%.6g) ENVIRON 环境变量关联数组。 ERRNO 最后一个系统错误描述。

    2.2K10

    一个yml文件居然能玩出这么多花样!

    每个清单(数组)成员以单行表示,并用短杠+空白(- )起始。使用方括号([]),并用逗号+空白(, )分开成员。 每个散列表成员用冒号+空白(: )分开键值和内容。...使用大括号({ }),并用逗号+空白(, )分开。 字符串值一般不使用引号,必要时可使用,使用双引号表示字符串时,会转义字符串特殊字符(例如\n)。使用单引号时不会转义字符串特殊字符。...大小写敏感 使用缩进表示层级关系,缩进不允许使用tab,只允许空格,因为有可能在不同系统下tab长度不一样 缩进空格数可以任意,只要相同层级元素左对齐即可 在单一文件中,可用连续三个连字号(—)区分多个文件...'#'表示注释,可以出现在一行中任何位置,单行注释 在使用逗号及冒号时,后面都必须接一个空白字符,所以可以在字符串数值中自由加入分隔符号(例如:5,280http://www.wikipedia.org...,如下: person: {name: 陈皮, age: 18, man: true} 数组 可以用短横杆加空格 -开头行组成数组每一个元素,如下address字段: person: name

    1.2K30

    一个 yml 文件居然能玩出这么多花样!

    每个清单(数组)成员以单行表示,并用短杠+空白(- )起始。使用方括号([]),并用逗号+空白(, )分开成员。 每个散列表成员用冒号+空白(: )分开键值和内容。...使用大括号({ }),并用逗号+空白(, )分开。 字符串值一般不使用引号,必要时可使用,使用双引号表示字符串时,会转义字符串特殊字符(例如\n)。使用单引号时不会转义字符串特殊字符。...大小写敏感 使用缩进表示层级关系,缩进不允许使用tab,只允许空格,因为有可能在不同系统下tab长度不一样 缩进空格数可以任意,只要相同层级元素左对齐即可 在单一文件中,可用连续三个连字号(—)区分多个文件...'#'表示注释,可以出现在一行中任何位置,单行注释 在使用逗号及冒号时,后面都必须接一个空白字符,所以可以在字符串数值中自由加入分隔符号(例如:5,280http://www.wikipedia.org...,如下: person: {name: 陈皮, age: 18, man: true} 数组 可以用短横杆加空格 -开头行组成数组每一个元素,如下address字段: person: name

    1.3K40

    SAPCAR 压缩解压软件使用方法

    SAPCAR 是 SAP 公司使用压缩解压软件, SAP 网站下载补丁包和小型软件基本都是扩展名为 car sar ,它们都可以用 SAPCAR 来解压。...) -X FILE :获得 FILE 中排除名称 示例: 用当前目录所有文件创建档案,包括点文件: SAPCAR -cvf MY.SAR ....如果所有档案路径中都不包含空格,这个清单必须用空格逗号分隔;例如: SAPCAR -xvf "ARCHIVE1.SAR ARCHIVE2.SAR" 如果至少有一个档案路径中包含空格,这个清单则必须用逗号分隔...创建:除非逗号是路径一部分,否则一定不能在末尾包含逗号;例如: SAPCAR -cvf "ARCHIVE WITH BLANK.SAR" * 提取/验证/列表:必须追加一个逗号;例如:...用 # 做为第一个非空格字符行会被 SAPCAR 忽略(同样,只包含空格行也 会被忽略)。 如果在指定文件中插入一个路径名,则带有路径权限完整路径会被包含在档案 中。

    1.4K20

    程序常用配置文件格式介绍

    (整数浮点数) 字符串(在双引号中) 逻辑值(true false) 数组(在方括号中) 对象(在花括号中) null JSON 对象在花括号中书写,对象可以包含多个名称/值对,使用逗号分隔: {...Xml)开始 名称不能包含空格 名称不能使用保留字词 3.2 XML 实例 下面以 XML 表示一个简单后台服务配置: <?...key = "value" 值必须是这些类型:字符串,整数,浮点数,布尔值,日期时刻,数组行内表。不指定值是有误。 键名可以是裸露,引号引起来点分隔。...# 在 Unix 系统,上面的多行字符串可能等同于: str2 = "玫瑰是红色\n紫罗兰是蓝色" # 在 Windows 系统,它可能等价于: str3 = "玫瑰是红色\r\n紫罗兰是蓝色...数组最后一个值后面可以有终逗号(也称为尾逗号)。值和结束括号前可以存在任意数量换行和注释。

    3.1K30

    API、String、StringBuilder

    类 : ​ next() : 遇到了空格, 就不再录入数据了 , 结束标记: 空格, tab键 ​ nextLine() : 可以将数据完整接收过来 , 结束标记: 回车换行符..., 就不再录入数据了 结束标记: 空格, tab键 nextLine() : 可以将数据完整接收过来 结束标记:...字符串一旦被创建,值就不可能发生改变。若是字符串内容发生了改变,那么一定是创建了一个新字符串对象。 字符串是由一个个字符组成,比如:"abc" --> 'a' 'b' 'c'。...) String[] split(String regex) :根据传入字符串作为规则进行切割 将切割后内容存入字符串数组中,并将字符串数组返回 得到字符串数组中取出元素内容,通过Student...) 根据开始和结束索引进行截取,得到新字符串包含头,不包含尾) ​ public String substring(int beginIndex) 传入索引处截取,截取到末尾,得到新字符串

    63650

    C++ fscanf函数分割读取文本文件

    流 stream 读取格式化输入,头文件是,  fscanf遇到空格和换行时结束。  声明  下面是 fscanf() 函数声明。 ...format -- 这是 C 字符串包含了以下各项中一个多个:空格字符、非空格字符 和 format 说明符。...char *d十进制整数:数字前面的 + - 号是可选。int *e,E,f,g,G浮点数:包含了一个小数点、一个可选前置符号 + -、一个可选后置字符 e E,以及一个十进制数字。...两个有效实例 -732.103 和 7.12e4float *o八进制整数。int *s字符串。这将读取连续字符,直到遇到一个空格字符(空格字符可以是空白、换行和制表符)。...int * 附加参数 -- 根据不同 format 字符串,函数可能需要一系列附加参数,每个参数包含了一个要被插入值,替换了 format 参数中指定每个 % 标签。

    1.9K00

    正则表达式使用

    注意,这会改变返回数组值, 每个元素都是由匹配子串作为第0个元素,它相对目标字符串偏移量作为第1个元素数组。这个标记只能用于 preg_split()。..., {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪。非贪婪模式尽可能匹配所搜索字符串,而默认贪婪模式则尽可能匹配所搜索字符串。例如,对于字符串 “oooo”,’o+?’...预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配搜索,而不是包含预查字符之后开始。 (?!...预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配搜索,而不是包含预查字符之后开始。 (?...例如,”o{1,3}” 将匹配 “fooooood” 中前三个 o。’o{0,1}’ 等价于 ‘o?’。请注意在逗号和两个数之间不能有空格。 非打印字符 \cx 匹配由x指明控制字符。

    91620

    DFA算法-简易Java敏感词过滤(含源文件和上万敏感词列表)

    第二个字符是S,则在子树”C”下面创建”S”接下来是D,N,创建完N就可以结束了。如此循环,就可以创建出类似上图多叉树。...这种算法会出现一个小意外,如果一个敏感词恰好是另一个敏感词前缀,就会导致较短敏感词被长敏感词覆盖,这种情况可以通过添加结束标记来区分。...不过我想法是,如果出现这种情况,直接把前缀屏蔽掉就行了,这样后半段也不算敏感词了(好像实际工作中不能这样做),因此我没有添加结束标记。...14596个敏感词(可能有个别重复),在测试代码里生成了一个长度为1000字符串,总共包含100个相同敏感词,敏感词中间有逗号隔开 重复执行过滤10000次,并打印结果和时间,结果如下 可以看到程序成功地过滤了敏感词...,并保留了逗号,总耗时335毫秒,平均每次过滤仅需要0.03毫秒,并且是在上万个敏感词和超长字符串情况下。

    7.5K32

    C#中字符串, String类和StringBuilder类

    程序把第一个单词位置0 开始由字符串中抽离出来, 而且是抽出了pos个数量字符. 既然pos包含空格位置, 那么这样做好像很多余....这里将用到算法包含下列这些步骤 : 1、找到字符串中第一个空格位置。 2、抽取单词。 3、空格后边开始到字符串末尾构建一个新字符串。 4、寻找新字符串另外一个空格。...Split 方法取得一条字符串后, 就会按照指定字符分割字符串, 并返回包含分割后字符串数组. 在前一小节实例中, SplitWords函数始终采用空格作为分隔符....我们需要在字符串中插入新字符, 字符串中移除字符, 或是用新字符替换旧字符, 以及向字符串添加空格或者字符 串中移除空格等等....Trim方法和TrimEnd 方法将会把空格其他字符字符串任一端移除掉. 人们既可以对指定单个字符进行整理, 也可以使用字符数组作为参数.

    1.8K50
    领券