真的没明白你的意思,是不是这样?
str = "---------------------------p56-------------------------"
if(/(-+)([pP])(\d+)(-+)/.test(str))
str.replace(/(-+)([pP])(\d+)(-+)/g,"----p56----")

解决方案 »

  1.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <META NAME="Generator" CONTENT="EditPlus">
      <META NAME="Author" CONTENT="">
      <META NAME="Keywords" CONTENT="">
      <META NAME="Description" CONTENT="">
     </HEAD> <BODY>
      <script>
      alert("----------------------p56434--------------------------".replace(/(-+)p([0-9]+)(-+)/g,"----p$2----"));
      </script>
     </BODY>
    </HTML>
      

  2.   

    謝謝樓上,幾乎是的
    只不過數字要保留
    比如
    ------p34-----------
    要替換為
    ----p34------------P12--
    要替換成
    ----p12----
    比較麻煩吧。因爲剛拿到一些txt資料,有4000多個文件,每個文件裏充斥了-----pXX-------,我的任務就是把他們替換成----pXX----
    我想用EditPlus的正則替換功能,所以就上來請大家幫忙
      

  3.   

    -+[pP]([1-9]\d{0,2}|1000)-+
    替换成
    ----P$1----
      

  4.   

    alert("-P5434------".replace(/(-+)([p|P](\d+))(-+)/,"----$2----"));
      

  5.   

    /^([-]*[pP]{1})(([\d]{1,3})|([1]{1}[0]{3}))([-]*)$/;