次の 4 つの形式に一致するルートを許可する必要があります。
- ふー
- foo.json
- foo.bar
- foo.bar.json
ルートが「.json」で終わる場合、その前の部分だけが一致する必要があるため、これら 4 つの例で一致する可能性があるのは「foo」と「foo.bar」だけです。
次の正規表現を思いつきました:が、Rails ではルート制約で/.*?(?=\.json|\Z)/
使用できないため、機能しません。\Z
正規表現アンカー文字は、ルーティング要件では許可されていません:
/.*?(?=\.json|\Z)/
これまたは別の正規表現を回避する方法はありますか?