Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取文本值、正则表达式或DOM方法?_Javascript_Regex - Fatal编程技术网

Javascript 获取文本值、正则表达式或DOM方法?

Javascript 获取文本值、正则表达式或DOM方法?,javascript,regex,Javascript,Regex,我有下面的街区 <span id="title"><select id="optionType"><option>choose option</option><option> hello</option><option>how are you</option></select></span> 选择选项你好,你好吗 我想删除第一个选项,并且需要在新行中获取所有其他选项,只有

我有下面的街区

<span id="title"><select id="optionType"><option>choose option</option><option> hello</option><option>how are you</option></select></span> 
选择选项你好,你好吗
我想删除第一个选项,并且需要在新行中获取所有其他选项,只有不带任何标记的选项文本。正则表达式是最好使用的方法,还是其他更好的方法来检索新行中的文本?我尝试了以下方法,但有时会失败

Description= $('title').innerHTML;
var tmp = Description;

tmp = tmp.replace("--Choose an option--</option>",""); // remove first option
tmp = tmp.replace(/<\/option><option>/g, "<\/option>\n<\/option>"); 
tmp = tmp.replace(/(<([^>]+)>)/g,""); 
tmp = tmp.replace(/\n/g, "\n"); 
tmp = tmp.replace(/^[\s]*/gm, '');

return tmp;
Description=$('title').innerHTML;
var tmp=描述;
tmp=tmp.replace(“--选择一个选项--”和“”);//删除第一个选项
tmp=tmp.replace(//g,“\n”);
tmp=tmp。替换(/(]+)>)/g,“”;
tmp=tmp.替换(/\n/g,“\n”);
tmp=tmp.replace(/^[\s]*/gm',);
返回tmp;

(]*?>([^如果可能,尝试使用jQuery而不是regex

大概是

$("#optionType>option:first").remove() //to delete first option
$("#optionType>option") //list of other options

您是否考虑过直接删除该选项而不是摆弄HTML代码

特别容易,因为您已经在使用JQuery:

$("#title option[value='--Choose an option--']").remove();

另请参见:

因为我们使用的是Javascript(因此可能是浏览器),使用标准DOM方法比使用正则表达式要容易得多。尝试使用更具描述性的标题并正确设置文章格式。这将提高回答率和质量。@Spudley:你们能帮我从DOM方法开始吗?它在IE中工作吗?我不明白你们想用所有其他选项做什么。你们能证明吗给我们一个期望结果的例子?请写一个更好的问题标题。
$("#title option[value='--Choose an option--']").remove();