【问题标题】:VS 2013 find and replace document.getElementById("elementId").value with $("#elementId).val()VS 2013 查找并替换 document.getElementById("elementId").value 为 $("#elementId).val()
【发布时间】:2014-12-03 05:17:29
【问题描述】:

我正在尝试全部替换

document.getElementById("elementId").value

$("#elementId").val()

元素 ID 变化的地方。

Find whatReplace with 语法应该是什么?

【问题讨论】:

  • 嗯 - 肯定正是您在问题中提出的问题?
  • 你尝试过什么?您可以使用不错的工具来学习和检查您的正则表达式 - regexr.com
  • @Vladimirs OP 正在谈论嵌入到 Visual Studio IDE 中的查找和替换功能。你知道如何使用正则表达式吗? :p
  • @Granga 尝试使用正则表达式搜索/替换的 Notepad++。
  • @Vladimirs 为这个有用的工具添加了书签。我在转义正则表达式字符串中的某些字符时遇到了麻烦。

标签: javascript jquery regex replace visual-studio-2013


【解决方案1】:

Ctrl+Shift+F进入“查找和替换”对话框。然后切换到“在文件中替换”选项卡并勾选“使用正则表达式”复选框

在“查找内容”文本框中输入:

document\.getElementById\(\"(?<elem>\w+)\"\)\.value

然后在“替换为”文本框中输入:

$("#${elem}").val()

【讨论】:

  • 完美运行。谢谢!
【解决方案2】:

选中Use Regular Expressions 框并搜索:

document\.getElementById\(\"(.*)\"\)\.value

并将其替换为:

$("#$1").val()

【讨论】:

    【解决方案3】:

    在 Notepad++ 中输入数据

    document.getElementById("elementId1").value
    document.getElementById("elementId2").value
    document.getElementById("elementId3").value
    document.getElementById("elementId4").value
    document.getElementById("elementId5").value
    document.getElementById("elementId6").value
    document.getElementById("elementId7").value
    document.getElementById("elementId8").value
    document.getElementById("elementId9").value
    document.getElementById("elementId10").value
    document.getElementById("elementId11").value
    document.getElementById("elementId12").value
    document.getElementById("elementId13").value
    document.getElementById("elementId14").value
    document.getElementById("elementId15").value
    document.getElementById("elementId16").value
    document.getElementById("elementId17").value
    document.getElementById("elementId18").value
    document.getElementById("elementId19").value
    document.getElementById("elementId20").value
    document.getElementById("elementId21").value
    document.getElementById("elementId22").value
    

    在查找/替换框中

    Find what: document\.getElementById\(\"(.+)\"\)\.value
    Replace with: $\("#\1"\).val\(\)
    Search Mode: Regular Expression
    

    输出数据:

    $("#elementId1").val()
    $("#elementId2").val()
    $("#elementId3").val()
    $("#elementId4").val()
    $("#elementId5").val()
    $("#elementId6").val()
    $("#elementId7").val()
    $("#elementId8").val()
    $("#elementId9").val()
    $("#elementId10").val()
    $("#elementId11").val()
    $("#elementId12").val()
    $("#elementId13").val()
    $("#elementId14").val()
    $("#elementId15").val()
    $("#elementId16").val()
    $("#elementId17").val()
    $("#elementId18").val()
    $("#elementId19").val()
    $("#elementId20").val()
    $("#elementId21").val()
    $("#elementId22").val()
    

    【讨论】:

    • Visual Studio 2013 不会产生该输出。
    • @KlausByskovPedersen 输入document.getElementById("elementId1").value document.getElementById("elementId2").value document.getElementById("elementId3").value document.getElementById("elementId4").value 产生$("#elementId1").val() $("#elementId2").val() $("#elementId3").val() $("#elementId4").val() 输出。这是 VS 2013 和 Notepad++ 中的准确输出。
    • 不,在VS2013中输出是$\("#\1"\).val\(\)
    • @KlausByskovPedersen 在 Visual Studio 2013 document\.getElementById\("(.+)"\)\.value$("#$1").val() 的替换框中可以看到相同的输出,但设置不同。输出结果在VS2013和Notepad++中是一样的。
    猜你喜欢
    • 2016-04-19
    • 1970-01-01
    • 2020-11-01
    • 1970-01-01
    • 2021-09-09
    • 1970-01-01
    • 2023-03-18
    • 2018-07-21
    • 2021-06-03
    相关资源
    最近更新 更多