我想使用jquery查找和替换

时间:2015-03-20 07:44:57

标签: jquery html

我想使用jquery查找和替换,我的代码是这样的:

<input id="find" style="width:100%; height:100%;" value="timesSome|standunder|ningmea|uoy|nitiondefi" />
<input id="replace" style="width:100%; height:100%;" value="Sometimes|understand|meaning|you|definition" />
<textarea id="input" style="width:150px; height:100px; resize:none;" wrap="off">timesSome to standunder a word's ningmea uoy need more than a nitiondefi.</textarea>
<textarea id="output" style="width:150px; height:100px; resize:none;" wrap="off"></textarea>
    <button>Process!</button>
  

查找:次数|站立| ningmea | uoy | nitiondefi

     

替换为:有时|了解|含义|您|定义

     

输入文字次有些人只需要一句话就可以了解nitiondefi。

     

结果:有时候理解一个词意味着你需要的不仅仅是一个定义。

3 个答案:

答案 0 :(得分:0)

您是否考虑过查找字符串?

var inputTextarea = document.getElementById('input');
inputTextarea.value = inputTextarea .value.replace(/timesSome/gi,'sometimes');

使用g区分大小写。 使用gi不区分大小写。

有许多选择可能。查看javascript正则表达式以获得更有趣的内容

答案 1 :(得分:0)

我已经使这个功能帮助你解决问题,看看并尝试。

var tofind = ($("#find").val()).split("|");
var splitInput = ($("#input").text()).split(" ");
var newString=" ";
for(var i=0;i<tofind.length;i++)
{
  for(var j=0;j<splitInput.length;j++)
  {
    if(tofind[i]==splitInput[j])
    {
    if(splitInput[j].length%2 == 0)
        to_add = splitInput[j].substring(splitInput[j].length/2 + 1, splitInput[j].length)+splitInput[j].substring(0,splitInput[j].length/2 + 1);
    else
        to_add = splitInput[j].substring(splitInput[j].length/2, splitInput[j].length)+splitInput[j].substring(0,splitInput[j].length/2);
    newString=newString+to_add+" ";
    }
    else 
    {
        newSTring=newString+splitInput[i]+" ";
    }
  }
}

答案 2 :(得分:0)

看看这段代码。它会对你有所帮助。

https://jsfiddle.net/madhanminho/17no986h/2/

    <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script>
$(document).ready(function(){
    $("#repl").click(function(){
        var data = $('#find').val();
        var data2 = $('#replace').val();
        var arr = data.split('|');
        var arr2 = data2.split('|');
        var res=$("#input").val();
        for(var i=0;i<arr.length;i++){

            res=res.replace(arr[i], arr2[i]);
        }
            $("#output").val(res);


    });
});

</script>
</head>
<body>
<input id="find" style="width:100%; height:100%;" value="timesSome|standunder|ningmea|uoy|nitiondefi" />
<input id="replace" style="width:100%; height:100%;" value="Sometimes|understand|meaning|you|definition" />
<textarea id="input" style="width:150px; height:100px; resize:none;" wrap="off">timesSome to standunder a word's ningmea uoy need more than a nitiondefi.</textarea>
<button id="repl">Process!</button>
<textarea id="output" style="width:150px; height:100px; resize:none;" wrap="off"></textarea>
</body>
</html>