case conversion in sed substitution does not work
John
dingo at coco2.arach.net.au
Fri Nov 12 17:00:27 UTC 2004
Dennis Decker Jensen wrote:
> Package: sed
> Version: 4.1.2-1
> Severity: normal
>
> case 1:
>
> echo dennis decker jensen | sed -re 's/[a-z]+/\U&/'
> DENNIS decker jensen
>
> case 2:
>
> echo dennis decker jensen | sed -re 's/[a-z]+/\u&/'
> ennis decker jensen
>
> I expected this in case 2:
> Dennis decker jensen
Sarge:
ummer at Kookaburra:~$ echo abc abc abc | sed -e 's/a/\u&/g'
bc bc bc
summer at Kookaburra:~$ echo abc abc abc | sed -e 's/a/\ua/g'
bc bc bc
summer at Kookaburra:~$ echo %LOCAL
%LOCAL
summer at Kookaburra:~$ echo $LANG
C
summer at Kookaburra:~$ echo dennis decker jensen | sed -re 's/[a-z]+/\U&/'
DENNIS decker jensen
summer at Kookaburra:~$ echo dennis decker jensen | sed -re 's/[a-z]+/\u&/'
ennis decker jensen
summer at Kookaburra:~$ echo dennis decker jensen | sed -re 's/[a-z]+/\u&/'
| xxd
0000000: 656e 6e69 7320 6465 636b 6572 206a 656e ennis decker jen
0000010: 7365 6e0a sen.
summer at Kookaburra:~$
Another Vendor:
[root at Kinkajou root]# echo abc abc abc | sed -e 's/a/\u&/g'
bc bc bc
[root at Kinkajou root]# echo abc abc abc | sed -e 's/a/\ua/g'
bc bc bc
[root at Kinkajou root]# echo dennis decker jensen | sed -re 's/[a-z]+/\U&/'
DENNIS decker jensen
[root at Kinkajou root]# echo dennis decker jensen | sed -re 's/[a-z]+/\u&/'
ennis decker jensen
[root at Kinkajou root]# echo dennis decker jensen | sed -re
's/[a-z]+/\u&/'| xxd
-bash: xxd: command not found
[root at Kinkajou root]# rpm -qf /etc/redhat-release
fedora-release-2.90-3
[root at Kinkajou root]#
>
> It eats the character! The same thing happens when using \l (\L).
>
> -- System Information:
> Debian Release: testing/unstable
> Architecture: i386 (i686)
> Kernel: Linux 2.6.8.1-3-386
> Locale: LANG=en_DK, LC_CTYPE=en_DK
>
> Versions of packages sed depends on:
> ii libc6 2.3.2.ds1-13ubuntu2.2 GNU C Library: Shared libraries an
>
> -- no debconf information
>
More information about the ubuntu-users
mailing list