Hi James, perl -pne 's/^(CN=)(DATA\.OU=)((.*?)\.O=CO)$/$1$4_$2$3/' /file/name or, if you prefer in-place editing, perl -i.bak -pne 's/(CN=)(DATA\.OU=)((.*?)\.O=CO)/$1$4_$2$3/' /file/name which replaces the file with the modified version and keeps a .bak file around for security. Example: lagavulin:~ pete$ cat /tmp/test some text some text2 CN=DATA.OU=XYZ.O=CO some text3 some text4 some text some text2 CN=DATA.OU=RST.O=CO some text3 some text4 some text some text2 CN=DATA.OU=ABC.O=CO some text3 some text4 some text some text2 CN=DATA.OU=UVWXYZ.O=CO some text3 some text4 lagavulin:~ pete$ perl -pne 's/(CN=)(DATA\.OU=)((.*?)\.O=CO)/$1$4_$2$3/' /tmp/test some text some text2 CN=XYZ_DATA.OU=XYZ.O=CO some text3 some text4 some text some text2 CN=RST_DATA.OU=RST.O=CO some text3 some text4 some text some text2 CN=ABC_DATA.OU=ABC.O=CO some text3 some text4 some text some text2 CN=UVWXYZ_DATA.OU=UVWXYZ.O=CO some text3 some text4 I guess that's what you need. Best regards, Peter.