Sponsored Content
Full Discussion: string manipulation
Top Forums UNIX for Dummies Questions & Answers string manipulation Post 302201824 by zaxxon on Tuesday 3rd of June 2008 08:32:58 AM
Old 06-03-2008
@vgersh99
You always cut the last 5 characters, no matter if he needs 4 or 6 like in the other rows.

@Franklin52
Yep, that's true. You have to know the possibilties of your file-to-be-parsed very well to limit the chances of unwanted behaviour.

So for the input presented we can say that when at least 5 zeros are in a row, that we can use them to separate the last digits we want:
Code:
sed 's/.*00000\([^0]*\)/\1/'

This will at least make sure, that even if you have 1 up to 4 zero in your last digits, the will be separated ie. parsed correctly. If you have at the end a "600000", you have a problem again. For this I don't have a good solution, as I just thought, that there at least a number of zeros following each other before the last digits come, you want.
If you know that the last digits are always not more than 6 digits, you can parse them like vgersh99 did, ie. add a dot or write it another way and after that cut off all leading zeros.


EDIT: @vgersh99
Oh you saw it already while I was writing Smilie
 

10 More Discussions You Might Find Interesting

1. Programming

string manipulation in C

Hi all, i have the following string as input : "<iframe src="http://abcdef.com/asd/aaa/awerftya0480000008ave/direct;wi.120;hi.600/01?page=" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" topmargin="0" leftmargin="0" allowtransparency="true" width="120" height="600"> <script... (1 Reply)
Discussion started by: trinath
1 Replies

2. Shell Programming and Scripting

String Manipulation

Hi, Suppose I have the following text in a file. ORA-00942: table or view does not exist ORA-01555: snapshot too old: rollback segment number string with name "string" too small Is there any way I can list all the text that starts only with 'ORA-'? Or there any grep command that can... (7 Replies)
Discussion started by: kakashi_jet
7 Replies

3. Shell Programming and Scripting

String manipulation

Hi, i am just gettin exposed to UNIX. Could anyone of u help me out with dis problem..? i have a variable 'act' which has the value as follows, echo $act gives -0- -0- -----0---- 2008-06-04 -0- -0- echo "$act" | awk '{print ($act)}' gives, -0- -0- -----0---- 2008-06-04 -0- -0- I... (2 Replies)
Discussion started by: jerrynimrod
2 Replies

4. Shell Programming and Scripting

string manipulation

i have a file that contains a pattern like this: ajay 1234 newyork available kumar 2345 denver singh 2345 newyork ajay 3456 denver kumar 3456 newyork singh 3456 delhi available ajay 4567 miami kumar 4567 miami singh 4567 delhi i want to search for each line... (5 Replies)
Discussion started by: ajay41aj
5 Replies

5. Shell Programming and Scripting

I need help with string manipulation

First of all I am VERY new to this so bare with me and try and explain everything even if it seems simple. Basically I want to read a line of text from a html file. See if the line of text has a certain string in it. copy an unknown number of characters (the last 4 characters wiil be ".jpg" the... (1 Reply)
Discussion started by: c3lica
1 Replies

6. Shell Programming and Scripting

String Manipulation

Hi, I have a file in the following format 123|shanwer|15DEC2010|bgbh|okok|16JAN3000|okok| I want the following to be in following format 123|shanwer|12\15\2010|bgbh|okok|01\16\3000|okok| SED/PERL/AWK Gurus could you please help me with this? Thanks Shankar (8 Replies)
Discussion started by: Shan2210
8 Replies

7. Shell Programming and Scripting

String manipulation

Hi All, Pls help me out on the below, 05 LAMSZ201-ZM-MEMO2-DATE02-5 PIC X(10). 05 LAMSZ201-ZM-MEMO2-AMT02-5 PIC S9(13)V99. 05 LAMSZ201-ZM-MEMO2-TYPE02-6 PIC XXX. 05 LAMSZ201-ZM-MEMO2-DATE02-6 PIC X(10). 05 ... (2 Replies)
Discussion started by: baskivs
2 Replies

8. Shell Programming and Scripting

String manipulation

Hello Could you help with small script: How to split string X1 into 3 string String X1 can have 1 or many strings X1='A1:B1:C1:D1:A2:B2:C2:D2:A3:B3:C3:D3' This is output which I want to have: Z1='A1:B1:C1:D1' Z2='A2:B2:C2:D2' Z3='A3:B3:C3:D3' (5 Replies)
Discussion started by: vikus
5 Replies

9. Shell Programming and Scripting

Deleting part of a string : string manipulation

i have something like this... echo "teCertificateId" | awk -F'Id' '{ print $1 }' | awk -F'te' '{ print $2 }' Certifica the awk should remove 'te' only if it is present at the start of the string.. anywhere else it should ignore it. expected output is Certificate (7 Replies)
Discussion started by: vivek d r
7 Replies

10. Shell Programming and Scripting

String Manipulation

I'm making a little game in Perl, and I am trying to remove the first instance of a character in an arbitrary string. For example, if the string is "cupcakes"and the user enters another string that contains letters from "cupcake" e.g: "sake"the original string will now look like this (below)... (3 Replies)
Discussion started by: whyte_rhyno
3 Replies
floating_to_decimal(3C) 												   floating_to_decimal(3C)

NAME
floating_to_decimal, single_to_decimal, double_to_decimal, extended_to_decimal, quadruple_to_decimal - convert floating-point value to dec- imal record SYNOPSIS
#include <floatingpoint.h> void single_to_decimal(single *px, decimal_mode *pm, decimal_record *pd, fp_exception_field_type *ps); void double_to_decimal(double *px, decimal_mode *pm, decimal_record *pd, fp_exception_field_type *ps); void extended_to_decimal(extended *px, decimal_mode *pm, decimal_record *pd, fp_exception_field_type *ps); void quadruple_to_decimal(quadruple *px, decimal_mode *pm, decimal_record *pd, fp_exception_field_type *ps); The floating_to_decimal functions convert the floating-point value at *px into a decimal record at *pd, observing the modes specified in *pm and setting exceptions in *ps. If there are no IEEE exceptions, *ps will be zero. If *px is zero, infinity, or NaN, then only pd->sign and pd->fpclass are set. Otherwise pd->exponent and pd->ds are also set so that (sig)*(pd->ds)*10**(pd->exponent) is a correctly rounded approximation to *px, where sig is +1 or -1, depending upon whether pd->sign is 0 or -1. pd->ds has at least one and no more than DECIMAL_STRING_LENGTH-1 significant digits because one character is used to terminate the string with a null. pd->ds is correctly rounded according to the IEEE rounding modes in pm->rd. *ps has fp_inexact set if the result was inexact, and has fp_overflow set if the string result does not fit in pd->ds because of the limitation DECIMAL_STRING_LENGTH. If pm->df == floating_form, then pd->ds always contains pm->ndigits significant digits. Thus if *px == 12.34 and pm->ndigits == 8, then pd->ds will contain 12340000 and pd->exponent will contain -6. If pm->df == fixed_form and pm->ndigits >= 0, then the decimal value is rounded at pm->ndigits digits to the right of the decimal point. For example, if *px == 12.34 and pm->ndigits == 1, then pd->ds will contain 123 and pd->exponent will be set to -1. If pm->df == fixed_form and pm->ndigits< 0, then the decimal value is rounded at -pm->ndigits digits to the left of the decimal point, and pd->ds is padded with trailing zeros up to the decimal point. For example, if *px == 12.34 and pm->n digits == -1, then pd->ds will contain 10 and pd->exponent will be set to 0. When pm->df == fixed_form and the value to be converted is large enough that the resulting string would contain more than DECI- MAL_STRING_LENGTH-1 digits, then the string placed in pd->ds is limited to exactly DECIMAL_STRING_LENGTH-1 digits (by moving the place at which the value is rounded further left if need be), pd->exponent is adjusted accordingly and the overflow flag is set in *ps. pd->more is not used. The econvert(3C), fconvert(3C), gconvert(3C), printf(3C), and sprintf(3C) functions all use double_to_decimal(). See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ econvert(3C), fconvert(3C), gconvert(3C), printf(3C), sprintf(3C), attributes(5) 7 Jun 2005 floating_to_decimal(3C)
All times are GMT -4. The time now is 04:46 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy