如何从固定字符串

时间:2017-08-24 07:59:09

标签: javascript

我有一个类似

的值

V = "Val1,Val2;Val3"

在这种情况下如果我需要分开" Val1,Val2"从V我正在使用这个

var newVal = V.substr(0, V.indexOf(";"));

但是这种情况对于像这样的一些价值来说是很有价值的。

V = "Val4;Val1,Val2;Val3"

任何想法如何只采取有","并删除由";"

分隔的所有其他字符

3 个答案:

答案 0 :(得分:5)

使用正则表达式

\w+,\w+ 

解决这个问题



function match(str){
    return str.match(/\w+,\w+/g);
}

console.log(match('a;b,c;d'));
console.log(match('a,b;c'));




答案 1 :(得分:1)

使用\w+(?=,)正则表达式获取所有这些值

答案 2 :(得分:0)

您也可以在分号上拆分,然后在逗号上过滤生成的数组 并从过滤后的数组中获取第一个元素。

示例代码段:

using System;
using Microsoft.TeamFoundation.Build.WebApi;
using Microsoft.VisualStudio.Services.Client;

namespace GetBuilds
{
    class Program
    {
        static void Main(string[] args)
        {
            var tfsUrl = " http://server:8080/tfs/Collection";
            var buildClient = new BuildHttpClient(new Uri(tfsUrl), new VssAadCredential());
            var builds = buildClient.GetBuildsAsync("YourProjectName");

            foreach (var build in builds.Result)

            {
                Console.WriteLine(String.Format("{0} - {1} - {2} - {3}", build.Definition.Name, build.Id.ToString(), build.Status.ToString(), build.SourceBranch.ToString()));
            }
        }
    }
}

这种方法的好处是,当逗号分隔超过2个单词时,它仍然可以正常工作。