Generate all possible word with caps and no caps


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Generate all possible word with caps and no caps
# 8  
Old 03-11-2013
Why can't you try modifying Chubler_XL's solution? If you need help we will help you.
# 9  
Old 03-11-2013
Hint there are 3 parts to the output:
(?i\)\\b at the front
the expanded letters
\\b\n at the end

This is probably a good point to mention the -w and -i options of grep:

Code:
 $ echo "Every good boy deserves fruit." | grep -iw every

# 10  
Old 03-12-2013
Quote:
Originally Posted by anbu23
Why can't you try modifying Chubler_XL's solution? If you need help we will help you.
Sure, I had tried by modifying it. But it did not work out. Anyways, I will try another option.
# 11  
Old 03-12-2013
Compare this with the solution you came up with:

Code:
$ echo mortgage | awk '{printf"(?i\\)\\\\b";for(i=1;i<NF;i++) printf ".?[%c%c]",toupper($i),tolower($i); printf "\\\\b\n"}' FS=
(?i\)\\b.?[Mm].?[Oo].?[Rr].?[Tt].?[Gg].?[Aa].?[Gg]\\b

This User Gave Thanks to Chubler_XL For This Post:
# 12  
Old 03-12-2013
For trivial cases, recursion could also be used to generate combinations.

Code:
$
$
$ cat -n genperm1.pl
     1  #!/usr/bin/perl
     2  use strict;
     3  use warnings;
     4
     5  sub permute {
     6    my ($x, $y) = @_;
     7    my $len = $#$x;
     8    while ($len >= 0 and $x->[$len] eq '1') { $len-- }
     9    exit if $len < 0;
    10    for (my $i=$#$x; $i>=0; $i--) {
    11      if ($x->[$i] eq '0') {
    12        $x->[$i] = '1';
    13        print map {$x->[$_] eq "0" ? lc $y->[$_] : uc $y->[$_]} 0..$#$x;
    14        print "\n";
    15        bless $x; bless $y;
    16        permute ($x, $y);
    17      } else {
    18        $x->[$i] = '0';
    19      }
    20    }
    21  }
    22
    23  my @arr = split//, lc $ARGV[0];
    24  my @bits = map {0} @arr;
    25  print @arr,"\n";
    26  permute (\@bits, \@arr);
    27
$
$ perl genperm1.pl Linux
linux
linuX
linUx
linUX
liNux
liNuX
liNUx
liNUX
lInux
lInuX
lInUx
lInUX
lINux
lINuX
lINUx
lINUX
Linux
LinuX
LinUx
LinUX
LiNux
LiNuX
LiNUx
LiNUX
LInux
LInuX
LInUx
LInUX
LINux
LINuX
LINUx
LINUX
$
$

# 13  
Old 03-13-2013
Quote:
Originally Posted by Chubler_XL
Compare this with the solution you came up with:
Thanks a bunch Chubler_XL. It works perfectly. Also, I was able to learn the usage more with your guidance. Smilie Thank you.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Caps lock problem

hi all this s quite a foolish problem. I seem to hav pressed some keys s.t in unix, my letters are comin in caps and with caps lock on, i am getting lowercase letters. :o Pls help. Also is there any reference or manual where i can check in case such problems arrise? thanx in advance curiosity (4 Replies)
Discussion started by: curiosity
4 Replies

2. UNIX for Dummies Questions & Answers

Is there a way to ignore CAPS or case sensitivity?

If I'm using a program that is expecting certain filenames and directories to be all CAPS, isn't there a way to ignore this in linux/cshell scripting? I.e., similiar to ignoring spaces with " (i.e., directory is directory 1, can ignore by typing "directory 1".) ?? (2 Replies)
Discussion started by: rebazon
2 Replies

3. Shell Programming and Scripting

Commands in all caps

Is it possible to make a bash script such that entering a command in all capital letters would be equivalent to using "sudo" before that command? For example: "sudo chmod 777 foo.txt" becomes "CHMOD 777 foo.txt" (3 Replies)
Discussion started by: bloom
3 Replies

4. UNIX for Dummies Questions & Answers

Copying files with caps?

Anyone know the proper command to copy files whose names CONTAIN a capital letter to a diff location? Every time I do it I ke copying ALL the files. Here is what ive tried cp ** newlocation cp newlocation (5 Replies)
Discussion started by: losingit
5 Replies

5. UNIX for Advanced & Expert Users

Set Caps and Num lock from within X?

Hello, Not sure if this is the right place to post it but.. I have a requirement to set Caps lock and/or Num lock on and off via a Cron job. Now I have working scripts that do the job, but as soon as X starts up the jobs no longer run (well they appear to, but Caps lock and Num lock do not... (0 Replies)
Discussion started by: autotuner
0 Replies

6. HP-UX

Caps lock dtterm

Hello, We are having a problem with running dtterm off a RHEL server. Logging into an HP-UX server from a RHEL 5.1 desktop, setting DISPLAY and running dtterm, the caps lock does not work. We have been playing with xmodmap & stty but to no avail. Any help appreciated. mgb (7 Replies)
Discussion started by: mgb
7 Replies

7. Red Hat

Caps lock dtterm

Hello, We are having a problem with running dtterm off a RHEL server. Logging into an HP-UX server from a RHEL 5.1 desktop, setting DISPLAY and running dtterm, the caps lock does not work. We have been playing with xmodmap & stty but to no avail. Any help appreciated. mgb (1 Reply)
Discussion started by: mgb
1 Replies

8. Shell Programming and Scripting

changing first letter to CAPS

Hi, I want to convert the first letter of this word from lowecase to uppercase. Assume a letter united. I want to translate to United Please let me know a simple way to do that. Thanks. (22 Replies)
Discussion started by: Krrishv
22 Replies

9. Shell Programming and Scripting

Convert character in word to CAPS??

Hi Gurus!! Is it possible to change a letter in a word to CAPS?? When correcting a paragraph i need to covert the word if it appears at the start of a line to caps....... if i had a phrase like my name is james and would like to sign up. how do i convert "my" to "My" or the... (3 Replies)
Discussion started by: vadharah
3 Replies
Login or Register to Ask a Question