Re: Swap lowercase and uppercase letters
- To: mathgroup at smc.vnet.net
- Subject: [mg130208] Re: Swap lowercase and uppercase letters
- From: awnl <awnl at gmx-topmail.de>
- Date: Wed, 20 Mar 2013 04:22:38 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <ki6n3l$gee$1@smc.vnet.net> <ki8o4n$ko6$1@smc.vnet.net>
Hi, >> >> I have the following example: "hELLO THERE!" >> >> Using Mathematica 8.0.4, how can I swap the lowercase and uppercase >> letters to output, >> >> "Hello there!" >> > > This is a reliable method that will work with scripts other than > Roman (such as Greek or Cyrillic) and will also work with many > accented letter: > > StringJoin@ Replace[Characters["hELLO THERE!"], {c_?LowerCaseQ :> > ToUpperCase[c], c_?UpperCaseQ :> ToLowerCase[c]}, {1}] > > Simply replacing A, B, ..., Z with a, b, ..., z is not a good option > because it won't handle accented letters (unless you include those as > well, which is a lot of work) > or, slightly simpler: StringReplace["hELLO THERE!", { c_?UpperCaseQ :> ToLowerCase[c], c_?LowerCaseQ :> ToUpperCase[c] }] regards, albert