簡體   English   中英

如何替換除空格之外的所有特殊字符。 和括號使用Java腳本

[英]how to replace all special characters except for spaces, . and brackets using java script

我正在嘗試替換BPM中表單中的所有特殊字符。

我用過

replace(/[_\W]+/g, "-") 

但這將替換所有包括。,()和空格的內容。 我需要排除其中一些字符以免被替換

這就是我要在BPM中執行的操作

tw.local.sql =“插入BPM_RBD_GATEWAY值('Forwarded','” + tw.local.RBDG.ProcessID +“','” + tw.local.RBDG.SolID +“','” + tw.local.RBDG .BranchCode +“','” + tw.local.RBDG.BranchName.replace(/ [__ W] + / g,“-”)+“','” + tw.local.RBDG.Name_brwr.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Name_Cooblgnt.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.CustID_Exstng.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.D_Status_Loan.replace(/ [_ \\ W] + // g,“-”)+“','” + tw.local.RBDG.D_Internl_Crdt_Ratng +“','” + tw.local.RBDG.D_Scheme_ProdctType.replace(/ [__ W] + / g,“-”) +“','” + tw.local.RBDG.Acnt_Nmbr.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Loan_Amnt.replace(/ [ _ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Bal_Outstandng.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Sanctnd_Period.replace(/ [__ W] + / g,“-”)+“','” + tw.local.RBDG.Deviatns_loan_sanctnIfany.replace(/ [_ \\ W] + / g ,“-”)+“','” + tw.local.RBDG.D_Loan_Sourcng +“','” + tw.local.RBDG.Prevs_Rate_concsn.replace(/ [_ \\ W] + / g,“-”)+ “','” + tw.local.RBDG.D_Existng_Accnt_Type +“','” + tw.local.RBDG.Existing_acn t_Rate.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Recomndr_Rate.replace(/ [_ \\ W] + / g,“-”)+ “','” + tw.local.RBDG.Arrears_Inspctn_Comnts.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.D_Borwr_Source_Empl_Profsn.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Borwr_Source_Details.replace(/ [_ \\ W] + / g,“-”)+“','” + tw .local.RBDG.Secrty_prmry_Nature.replace(/ [__ W] + / g,“-”)+“','” + tw.local.RBDG.Secrty_prmry_Value.replace(/ [_ \\ W] + / g, “-”)+“','” + tw.local.RBDG.Secrty_prmry_DtlsLimit.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Secrty_Collat​​rl_Nature。 replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Secrty_Collat​​rl_Value.replace(/ [_ \\ W] + / g,“-”)+“' ,'“ + tw.local.RBDG.Secrty_Collat​​rl_DetLimt.replace(/ [_ \\ W] + / g,”-“)+”','“ + tw.local.RBDG.Deatils_ExistngBus_BrwrEnjoy.replace(/ [__ W ] + / g,“-”)+“','” + tw.local.RBDG.Deatils_ExistngBus_TotGroup.replace(/ [__ W] + / g,“-”)+“','” + tw.local .RBDG.Deatils_ExistngBus_OprtvAccnt.replace(/ [__ W] + / g,“-”)+“','” + tw.local.RBDG.Deatils_ExistngBus_OtherPrdct.replace(/ [_ \\ W] + / g,“- “)+”','“ + tw.local.RBDG。 Additional_Details.replace(/ [_ \\ W] + / g,“-”)+“','” + tw.local.RBDG.Specific_BrRecom.replace(/ [_ \\ W] + / g,“-”)+ “','',”,”,”,”,”,”,”,”,”,”,”,”,”,”,'' ,'“” + tw.local.RBDG.Br_Entry_User +“','”“ + tw.local.RBDG.Recomndr_Entry_User +”','','','','','','','','' ,'“ + tw.local.RBDG.Date +”','','','','','','',))“;

使用替換功能過濾掉不想替換的匹配項

var excludes = [",", " ", "(", ")"];
var output = input.replace(/[_\W]/g, function(match){
  if ( excludes.indexOf(match) == -1 )
  {  
    match = "-";
  }
  return match;
}) ;

演示

 var input = "asda<>*(*_()(), wdsf %^&%^&"; var excludes = [",", " ", "(", ")"]; var output = input.replace(/[_\\W]/g, function(match){ if ( excludes.indexOf(match) == -1 ) { match = "-"; } return match; }) ; alert(output); 

var str = "ABC/D A.b.c.;Qwerty(dgdf)";
var result = str.replace(/[^A-Za-z.;()]/g, "");

您將得到ABCDA.bc; Qwerty(dgdf)

告訴我那對你是否很好

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM