저는 Markdown과 [[]]
위키 링크 형식을 사용하는 새로운 위키로 변환하고있는 오래된 위키를 가지고 있습니다. 불행히도, 오래된 위키는 이며, 실제로는이고, 은 많은 링크를 생성하는 방법을 가지고 있습니다. CamelCase, 단일 브라켓 ([]
) 위키 링크. 불행하게도정규 표현식을 파싱하는 위키 링크를 어떻게 수정할 수 있습니까?
s/([^[|])([A-Z][a-z]+[A-Z][A-Za-z]+)([^]|])/\1\[\[\2\]\]\3/g
, 하나 개의 문제에 : 나는 ([[]]
) 위키 링크 sed
에서 정규 표현식 승/변환 두 번 브래킷에 독립형 낙타 표기법 링크를 변환하려면 다음 정규 표현식을 사용하고있어
위의 (기존의 단일 브라켓 Wiki 링크에서 CamelCase를 변환하지 않으려 고 시도한 결과) [BluetoothConnection|UsingBluetoothIndex]
과 같은 것이 [BluetoothConnection|Using[[BluetoothInde]]x]
으로 변환됩니다.
어떻게하면이 문제를 해결할 수 있습니까? 더 많은 욕심을 불러 일으켜 강제로 실패하고 대체 할 수 없습니까? sed
의 확장 정규 표현식이 너무 제한적이라면, sed
대신 perl
을 기꺼이 통과 할 의향이 있습니다.
'[BluetoothConnection | UsingBluetoothIndex] 문자열에 예상되는 출력은 무엇입니까 – anubhava
'[BluetoothConnection | UsingBluetoothIndex]'는 나중에 정규 표현식으로 처리하기 위해 그대로 두어야합니다. – morgant