我是学习javascript的初学者,需要从字符串中检索值的特定部分。
下面是我的队友提供的字符串格式,它们是一组参数,其值用冒号分隔。
一旦输入参数名称,然后在下一个冒号之前返回值,我该如何检索该值?
string = "productCat:Wine:country:Australia:year:2000:type:white wine:"
示例:
谢谢!
答案 0 :(得分:0)
这是一个小例子。只需拆分字符串,然后如果找到内容,则寻找下一个索引。 但这不是很聪明。
public static SessionFactory getSessionFactory() {
Configuration configuration = new Configuration().configure();
configuration.addAnnotatedClass(com.myOrg.entities.Person.class);
StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties());
SessionFactory sessionFactory = configuration.buildSessionFactory(builder.build());
return sessionFactory;
}
如果我是你,这就是我要做的事情:
string cleaned = Regex.Replace(input, "\\b" + string.Join("\\b|\\b",BAD_WORDS) + "\\b", "")
只需解析字符串并构建一个以后即可使用的对象;)
答案 1 :(得分:0)
这是一个与旧版浏览器兼容的示例。
var string = "productCat:Wine:country:Australia:year:2000:type:white wine:"
function getPart(string, input) {
var parts = string.split(":");
for (var i = 0; i < parts.length; i = i + 2) {
if (parts[i] == input) {
return parts[i+1];
}
}
}
console.log(getPart(string, "productCat"));
答案 2 :(得分:0)
首先使用split()函数将字符串拆分为字符串数组
string="productCat:Wine:country:Australia:year:2000:type:white wine:"
var array=string.split(":");
第二次根据输入返回的值为index +
return var x=array[array.indexOf(input)+1];