Javascript 需要从随机大小的字符串中提取字符串

Javascript 需要从随机大小的字符串中提取字符串,javascript,selenium-ide,Javascript,Selenium Ide,字符串有问题。我有一根像这样的长绳子: "Other title of some text here name of file Date: 01/01/2011 Picture ID: UYT-2011-01 Company My company" 我需要做的是提取图片id,即UYT-2011-01部分。前后的文本不是设定的大小,可以是整个段落,后面的文本可以是任意长度,事实上图片ID本身可以是15-20个字符 出于我的目的,我想提取图片ID:后面字符串中的15个字符 我使用的是Seleniu

字符串有问题。我有一根像这样的长绳子:

"Other title of some text here name of file Date: 01/01/2011 Picture ID: UYT-2011-01 Company My company"
我需要做的是提取图片id,即
UYT-2011-01
部分。前后的文本不是设定的大小,可以是整个段落,后面的文本可以是任意长度,事实上图片ID本身可以是15-20个字符

出于我的目的,我想提取
图片ID:
后面字符串中的15个字符


我使用的是Selenium IDE,所以它需要是javascript或regexp方法

假设图片ID中没有空格,并且后面总是有空格,这个正则表达式解决方案应该在JavaScript中工作:

var longString = "Other title of some text here name of file Date: 01/01/2011 Picture ID: UYT-2011-01 Company My company";

longString.match(/Picture ID: ([^ ]*)/);

// Returns ["Picture ID: UYT-2011-01", "UYT-2011-01"]

longString.match(/Picture ID: ([^ ]*)/)[1];

// Returns "UYT-2011-01"

这样的匹配意味着图片ID可以是任意长度,只要它由空格字符分隔。

应该可以让您继续

var str = "Other title of some text here name of file Date: 01/01/2011 Picture ID: UYT-2011-01 Company My company";

var searchStart = "Picture ID:";
var start = str.indexOf(searchStart);
var end = str.indexOf("Company");
var part = str.substring(start, end);

//also part.replace(searchStart, "");

console.log(part);

对不起,忘了提到“公司”不是确定的,它可以是任何东西,这只是一个例子。