Php 只删除第一个“的正则表达式”/&引用;

Php 只删除第一个“的正则表达式”/&引用;,php,javascript,expression,Php,Javascript,Expression,我不熟悉正则表达式,似乎不知道如何解决这个问题: 我需要一个只“允许”数字、字母和/的正则表达式。我写道: /[^a-zA-Z0-9/]/g 我认为可以去掉第一个/,但不知道如何去除 所以#/register/step1变成register/step1 谁知道我怎么能得到这个结果 谢谢 编辑:不知道为什么我没有首先提出这个建议,但是如果您只是强制执行模式而不是替换,那么您可以在检查模式之前使用strpos()、substr()或类似的方法替换斜杠(如果存在)。如果您已经在使用preg_repla

我不熟悉正则表达式,似乎不知道如何解决这个问题:

我需要一个只“允许”数字、
字母和
/
的正则表达式。我写道:

/[^a-zA-Z0-9/]/g

我认为可以去掉第一个
/
,但不知道如何去除

所以
#/register/step1
变成
register/step1

谁知道我怎么能得到这个结果


谢谢

编辑:不知道为什么我没有首先提出这个建议,但是如果您只是强制执行模式而不是替换,那么您可以在检查模式之前使用strpos()、substr()或类似的方法替换斜杠(如果存在)。如果您已经在使用preg_replace(),那么您应该查看函数文档上的示例,它们非常相关

如果模式在字符串中是连续的,您可以使用非全局匹配:

var rx=/(([a-zA-Z0-9]+\/*)+)/;

var s='#/register/step1';

var s1=(s.match(rx) || [])[0];


alert(s1)>>>  returned value: (String) "register/step1"
\w相当于[^A-Za-z0-9],因此:

"/register/step1".match(/\w[\w/]*/); // ["register/step1"]

您是否尝试过将
g
剥离?
"/register/step1".match(/\w[\w/]*/); // ["register/step1"]