如何使用 javascript split 函数从分隔字符串中提取空值

发布于 2024-08-22 02:13:26 字数 508 浏览 2 评论 0原文

我正在尝试使用 javascript split 函数解析分隔字符串。我正在使用双字符分隔符。 例如,如果字符串包含具有以下字段的员工相关数据:

  1. Emp Id(强制)

  2. Name(强制)

  3. 年龄(可选)

  4. 手机号码(可选)

,使用的分隔符为 |*(即竖线后跟星号)

我可能有这样的数据

5322|*Mike|*21|*077665543

5323|*Jen|*|*077665543

5324|*Raj|*25|*

5325|*Alan|*|*

如何将空值提取到 split 返回的数组中?

如果我使用 Record.split(/\|*/) 似乎会忽略空值。我是否需要使用其他函数(例如 regex exec + substring)来执行此操作?除了这个问题之外,split功能似乎还蛮方便的。

I'm trying to parse a delimited string using the javascript split function. I'm using a double character delimiter.
So for e.g. if the string contains employee related data with the following fields:

  1. Emp Id (mandatory)

  2. Name (mandatory)

  3. Age (optional)

  4. Mobile No (optional)

and the delimiter used is |* (i.e. pipe followed by star)

I may have data like this

5322|*Mike|*21|*077665543

5323|*Jen|*|*077665543

5324|*Raj|*25|*

5325|*Alan|*|*

How do I extract null values into the array returned by split?

If I use Record.split(/\|\*/) It seems to ignore the null values. Do I need to use other functions like regex exec + substring to do this? The split function seems to be quite convenient except for this issue.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

意中人 2024-08-29 02:13:26

您所做的事情是正确的,并且存在空值。

>>> "5325|*Alan|*|*".split(/\|\*/)
["5325", "Alan", "", ""]

What you're doing is correct, and the null values are present.

>>> "5325|*Alan|*|*".split(/\|\*/)
["5325", "Alan", "", ""]
把回忆走一遍 2024-08-29 02:13:26

不要将 null 与空字符串混淆。您的正则表达式正确分割分隔字符串,当字段应为“空”时捕获空字符串。如果您需要这些数组元素为空,那么您必须自己对返回的数组进行后处理。

Do not confuse null with an empty string. Your regular expression splits the delimited string properly, capturing empty strings when the fields are "empty" as they should. If you need these array elements to be null, then you'd have to post-process the returned array yourself.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文