javascript - 提取字符串并将其存储为变量

标签 javascript jquery regex

如何提取字符串并将其存储为变量?我有这个网址:

http://sub.site.com/WordsHere-t.jpg

我希望能够抓取WordsHere。它可以是任意长度,并不总是 9 个字符。检测 / 之后和 - 之前的单词的最佳方法是什么?

var url = "http://sub.site.com/WordsHere-t.jpg";
var getWords = insertRegexHere(url);
document.write(getWords);

这应该返回字符串“WordsHere”

最佳答案

这会起作用...

var url = "http://sub.site.com/WordsHere-t.jpg";
var getWords = url.match(/.*\/(.*)-/)[1];

正则表达式像这样分解......

  • .*\/ 查找直到最后一个斜杠的所有内容
  • (.*)- 捕获破折号之前的所有内容

这是一个 fiddle :FIDDLE DEMO

还有一个 rubular 来展示正则表达式的工作原理:RUBULAR DEMO

编辑 - 好处是它也适用于像这样的 URL,因为

http://sub.site.com/sub1/sub2/WordsHere-t.jpg

Edit2 - 我缩短了正则表达式...我认为每个人都想太多了...没有必要在开始时测试双斜杠。只找到最后一个斜杠。

关于javascript - 提取字符串并将其存储为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22999638/

相关文章:

javascript - $.ajax() 中的 this 关键字调用其他函数来设置 url

javascript - 如何在字符串中搜索第一次出现的 ":/",然后搜索找到的子字符串(包括 ":/")的所有其他出现?

c# - 创建标记语言 - 条件

regex - 为什么 RewriteRule .和 ^(.*)$ 一样吗?

javascript - 在处理多个参数类型时, "overload"是一个函数更好还是有两个单独的函数

javascript - 计算单选按钮的总和,显示总和,并传递到外部 Beanstream 服务器

javascript - 在 Userpro 插件中获取新注册用户的用户 ID

jquery - 如何扩展 jQuery 插件?

Javascript 在第二次点击后立即执行

javascript - 如何在文本框输入时更改文本框的颜色?