我正在尝试从用户输入中删除所有非键盘字符,但我很难做到。以下正则表达式只替换一个字符而不是多个...我已经尝试将结尾的/i
替换为/ig
,但它被识别为未知标志而失败。我还尝试使用*
和其他各种组合,但似乎无法解决问题。
$data = preg_replace('/[^a-z0-9<>\s\!\@\#\$\%\^\&\*\(\)\_\+\-\=\{\}\[\]\|\\\:\;\"\'\?\/\>\.\<\,\®]/i', '', $data);
针对此文本进行测试:
营养咨询 <br /><br />在线诊所访问,除非在证书或EOC中明确涵盖。<br /><br />健身俱乐部会员资格 <br /><br />任何服务,只要您有权获得这些服务的医疗保险福利而无需支付额外的医疗保险费用 <br /><br />食品或膳食补充剂,除非在证书或EOC中明确说明或法律要求 <br /><br />非医疗原因进行基因检测,或者没有医学指示或家族遗传异常史 <br /><br />户外治疗项目 <br /><br />当义肢和耐用医疗设备丢失或被盗时替换 <br /><br />与代孕妊娠有关的向未纳入协议范围内的任何人提供的任何服务或用品 <br /><br />仅为出国旅行而接种的疫苗 <br /><br />与既往病史有关的服务或用品 <br /><br />除非由Anthem Blue Cross特别提供或安排,否则不提供教育服务 <br /><br />不孕不育治疗服务(包括绝育手术逆转和与精子、卵子、胚胎和卵巢组织储存相关的费用),除非在证书或EOC中明确说明 <br /><br />在非承包医院提供的护理或治疗 <br /><br />私人护理服务,除非在证书或EOC中明确说明 <br /><br />主要用于减重的服务,除非是治疗病态肥胖的必要医疗服务 <br /><br />在任何门诊设置中分发或管理的门诊药物、药物或其他物质 <br /><br />避孕器具,除非您的医生确定口服避孕药不适合您。 <br /><br />静脉治疗:进行任何方法(包括硬化疗法或其他手术)治疗静脉曲张或毛细血管扩张的皮肤静脉(蜘蛛痣),当服务是为了美容目的时。 <br /><strong><br />第三方责任</strong> - 如果成员从法律上有责任的第三方恢复损失,则Anthem Blue Cross有权获得支付的福利的偿还。 <br /><br /><strong>协调福利</strong> - 如果成员拥有任何其他团体医疗保健、牙科、处方药或视觉保险,那么该计划的福利可能会减少,以使所有团体保险覆盖的服务不超过100%的覆盖费用
\Q...\E
是你的好朋友。它可以抑制它们之间的特殊字符,将它们按字面意义进行匹配。http://www.regular-expressions.info/reference.html - dlras2