On the last line, this clause is not needed: `| '\\/')`.
Demo'd using PCRE as implemented in node javascript:
```javascript
> console.log("ab/*c*\\/d*/ef")
ab/*c*\/d*/ef
undefined
> "ab/*c*\\/d*/ef".match(/\/\*((?:[^*]|\*[^/])*)\*\//)
[
'/*c*\\/d*/',
'c*\\/d',
index: 2,
input: 'ab/*c*\\/d*/ef',
groups: undefined
]
```
http://shex.io/shex-semantics/#term-PASSED_TOKENS says (see table at bottom 'cause markdown is being weird).