【问题标题】:How to split a string and get middle characters using jQuery?如何使用 jQuery 拆分字符串并获取中间字符?
【发布时间】:2017-02-22 05:41:52
【问题描述】:

我有一个格式如下的网址:

example.com/test/label-name/abc123

example.com/test/label-name/abc123/status-name/

在上述情况下,我需要获取字符串“abc123”。上述情况随机发生。如何在这里使用 if 条件?

我尝试过以不同方式使用 Split() 和 Contains()。这是没有用的。任何人都可以为此提出解决方案吗?

谢谢。

【问题讨论】:

  • 你要获取的字符串每次都会出现在同一个地方?就像它不能正确改变地方
  • 很确定您正在寻找window.location.pathname.split('/')[3]
  • 你总是想得到第三个'/'之后的字符串吗?你的 URL 模式有变化吗?

标签: jquery string url split


【解决方案1】:

如果“abc123”的位置在您提供的 URL 示例中没有改变,您可以使用以下内容:

var url = 'example.com/test/label-name/abc123/status-name/';
var splitURL = url.split('/');

var result = splitURL[3];
if(result == 'abc123'){
    alert('Hey! I got abc123');
}

无论 url 是什么,它总是会给你那个位置的任何东西。

【讨论】:

  • 但字符串“abc123”也保持变化。只有 /label-name/ 和 /status-name/ 是不变的。这种情况下能拿到吗?
  • 你可以在那里放一个 if 语句。所以alert只会在你有'abc123'时出现,看看我编辑的代码
  • 这不是重点。无论URL如何,我都需要出现在“apc123”位置的任何字符串。唯一不变的条件是 /label-name/ 和 /status-name/。需要这两个字符串之间的任何内容。
  • 那么我发给你的代码就可以工作了……只要做splitURL[3]你就会得到位置三的任何东西。你是说abc123的位置也变了?喜欢的网址可以是example.com/test/something/label-name/somelabel/status-name/
【解决方案2】:

据我所知,假设您的 URL 结构没有改变,您将始终对第三个字符串元素感兴趣

var url = 'example.com/test/label-name/abc123/status-name/';
var splitURL = url.split('/');

var result = splitURL[3];

result 应该始终为您提供“abc123”所在的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    • 2023-03-24
    • 2018-06-13
    • 2011-05-31
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多