繁体   English   中英

如何使用javascript从某个字符中提取字符串?

[英]How to extract the string from certain character using javascript?

嗨,我是编程新手。 我想从特定字符中提取字符串。

考虑下面的字符串。

'<sometext id="2" name="username"/>hello'

我想在 /> 之后检索“用户名”和文本,即“你好”

所以基本上我有这个字符串作为对象属性的值,所以像

object  = {
              property_1: "<sometext id=\"2\" name=\"username\"/>hello",
          }

所以我使用 object.string_to_parse 检索它并将其存储在变量 string_to_parse 中

let string_to_parse = object.property_1;

现在我想从 string_to_parse 中获取字符串“username”并将其存储在一个单独的变量中,并将其存储在 string_to_parse 中的字符串“hello”中,并将其存储在另一个变量中。

我该怎么做。 有人可以帮我解决这个问题吗? 谢谢。

此处使用的一种潜在解决方案是拆分该字符串并存储您需要的部件。 像这样:

 let object = { property_1: "<sometext id='2' name='username'/>hello", }; let string_to_parse = object.property_1; let prop1; let prop2; prop1 = string_to_parse.split("name='")[1].split("'/")[0]; prop2 = string_to_parse.split('/>')[1]; console.log(prop1); console.log(prop2);

正则表达式应该可以解决问题:

var str = '<sometext id="2" name="username"/>hello';

var re = /name="([^"]*)"/g
match = re.exec(str);
var uname = match[1];

var re = /\/>(.*)$/g
match = re.exec(str);
var msg = match[1];

uname 和 msg 变量包含您要提取的内容

取决于您的分隔符是只有一个还是多个"/>" 如果我们假设我们只有一个,您可以通过以下方式获得它:

object.property_1.split("/>")[1] 

split方法可帮助您返回 2 个元素,一个包含分隔符之前的字符串(此处为">" ),另一个包含分隔符之后的字符串。

使用这种方法你可以很容易地得到你的用户名字符串,所以我会让你自己做这个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM