Sponsored Content
Top Forums UNIX for Dummies Questions & Answers To find the Nth Occurence of Search String Post 302542185 by yazu on Wednesday 27th of July 2011 02:16:16 AM
Old 07-27-2011
I didn't know about this. Works fine:
Code:
vim +3/str FILE

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to find vowel's occurence in a string

Hi All, I want to search the string for vowel's occurence and find the no of occurence of each vowels, Could anyone help me out? This is urgent to me...I m new to Shell programming.. Thanks and Regards, Nids:b: (4 Replies)
Discussion started by: Nidhi2177
4 Replies

2. Shell Programming and Scripting

Find index of last occurence of a character within a string

I need to find the index of last '|' (highlighted in bold) in awk : |ifOraDatabase.Lastservererr<>0then|iferr_flag<>0then|end if Please suggest a way... Thanks (5 Replies)
Discussion started by: joyan321
5 Replies

3. Shell Programming and Scripting

shell script to find the second occurence of the alphabet in a string

this is my assignment question. i'm supposed to submit it tommorow. can somebody please help me with it? Do not post homework questions in the main forums. Please post in the homework forum using the correct template. (0 Replies)
Discussion started by: vijjy
0 Replies

4. Shell Programming and Scripting

Find the occurence of particular string in log file

I have a log file which looks like this: <845185415165:STATUS:5/0:0:0:0:0|ghy59DI5zasldf87asdfamas8df9asd903tGUVSQx4GJVSQ==> I have to extract DATE and number of times the keyword STATUS is shown on each date. Input is : <1354625655744:STATUS:5/0:0:0:0:0|ghy59DI5ztGUVSQx4GJVSQ==>... (8 Replies)
Discussion started by: maddyrox
8 Replies

5. Shell Programming and Scripting

[Solved] Find and replace till nth occurence of a special character

Hi, I have a requirement to search for a pattern in each line in a file and remove the in between words till the 3rd occurrence of double quote ("). Ex: CREATE TABLE "SCHEMANAME"."AMS_LTV_STATUS" (Note: "SCHEMANAME" may changes for different schemas. Its not a fixed value) I need to... (2 Replies)
Discussion started by: satyaatcgi
2 Replies

6. Shell Programming and Scripting

To find nth position of character in string

Hi guyz i want to know nth position of character in string. For ex. var="UK,TK,HK,IND,AUS" now if we see 1st occurance of , is at 3 position, 2nd at 6,..4th at 13 position. 1st position we can find through INDEX, but what about 2nd,3rd and 4th or may be upto nth position. ? In oracle we had... (2 Replies)
Discussion started by: Jonty Immortal
2 Replies

7. Shell Programming and Scripting

Find and increment at each occurence of string (loop)

I created script (sh shell) to generate vlc playlist based on some data files. All works fine so far except one string I do not know how to handle with. VLCSTART='<vlc:id>' VLCV=0 VLCEND='</vlc:id>' echo -e $'\n'$'\t'$'\t'$'\t'$'\t'\$VLCSTART$VLCV$VLCENDOutput file contains several occurences... (10 Replies)
Discussion started by: TiedCone
10 Replies

8. Shell Programming and Scripting

Get nth occurence of string from a file

I have file in which the data looks like this, 01,0000000,xxxxxxx/ 02,xxxxxxxx,yyyyyy/ 03,test1,41203016,,/ 01,0000000,xxxxxxx/ 02,xxxxxxxx,yyyyyy/ ... (16 Replies)
Discussion started by: r@v!7*7@
16 Replies

9. Shell Programming and Scripting

How to search and replace string from nth column from a file?

I wanted to search for a string and replace it with other string from nth column of a file which is comma seperated which I am able to do with below # For Comma seperated file without quotes awk 'BEGIN{OFS=FS=","}$"'"$ColumnNo"'"=="'"$PPK"'"{$"'"$ColumnNo"'"="'"$NPK"'"}{print}' ${FileName} ... (5 Replies)
Discussion started by: Amit Joshi
5 Replies

10. Shell Programming and Scripting

Delete after nth occurence of string in each line

Hello, Environment: I am under Ubuntu 18.04 bionic. I have an sql file consisting of 10K lines. Objective: What I am trying to attain is to remove everything coming after 2nd tab in each line. While searching for the answer, I found two answers and both gave expected result just for the first... (2 Replies)
Discussion started by: baris35
2 Replies
Judy1(3)						     Library Functions Manual							  Judy1(3)

NAME
Judy1 macros - C library for creating and accessing a dynamic array of bits, using any value of a word as an index. SYNOPSIS
cc [flags] sourcefiles -lJudy #include <Judy.h> int Rc_int; // return code - integer Word_t Rc_word; // return code - unsigned word Word_t Index, Index1, Index2, Nth; Pvoid_t PJ1Array = (Pvoid_t) NULL; // initialize Judy1 array J1S( Rc_int, PJ1Array, Index); // Judy1Set() J1U( Rc_int, PJ1Array, Index); // Judy1Unset() J1T( Rc_int, PJ1Array, Index); // Judy1Test() J1C( Rc_word, PJ1Array, Index1, Index2); // Judy1Count() J1BC(Rc_int, PJ1Array, Nth, Index); // Judy1ByCount() J1FA(Rc_word, PJ1Array); // Judy1FreeArray() J1MU(Rc_word, PJ1Array); // Judy1MemUsed() J1F( Rc_int, PJ1Array, Index); // Judy1First() J1N( Rc_int, PJ1Array, Index); // Judy1Next() J1L( Rc_int, PJ1Array, Index); // Judy1Last() J1P( Rc_int, PJ1Array, Index); // Judy1Prev() J1FE(Rc_int, PJ1Array, Index); // Judy1FirstEmpty() J1NE(Rc_int, PJ1Array, Index); // Judy1NextEmpty() J1LE(Rc_int, PJ1Array, Index); // Judy1LastEmpty() J1PE(Rc_int, PJ1Array, Index); // Judy1PrevEmpty() DESCRIPTION
A Judy1 array is the equivalent of a bit array or bit map. A bit is addressed by an Index (key). The array may be sparse, and the Index may be any word-sized Value. If an index is present, it represents a set bit (a bit set represents an index present). If an index is absent, it represents an unset bit (a bit unset represents an absent index). A Judy1 array is allocated with a NULL pointer Pvoid_t PJ1Array = (Pvoid_t) NULL; Memory to support the array is allocated as bits are set, and released as bits are unset. If the Judy1 pointer (PJ1Array) is NULL, all bits are unset (and the Judy1 array requires no memory). As with an ordinary array, a Judy1 array contains no duplicate indexes. Using the macros described here, rather than the Judy1 function calls, the default error handling sends a message to the standard error and terminates the program with exit(1). For other error handling methods, see the ERRORS section. Because the macro forms are sometimes faster and have a simpler error handling interface than the equivalent functions, they are the pre- ferred way of calling the Judy1 functions. J1S(Rc_int, PJ1Array, Index); // Judy1Set() Set Index's bit in the Judy1 array PJ1Array. Return Rc_int set to 1 if Index's bit was previously unset (successful), otherwise 0 if the bit was already set (unsuccess- ful). J1U(Rc_int, PJ1Array, Index); // Judy1Unset() Unset Index's bit in the Judy1 array PJ1Array; that is, remove Index from the Judy1 array. Return Rc_int set to 1 if Index's bit was previously set (successful), otherwise 0 if the bit was already unset (unsuccess- ful). J1T(Rc_int, PJ1Array, Index); // Judy1Test() Test if Index's bit is set in the Judy1 array PJ1Array. Return Rc_int set to 1 if Index's bit is set (Index is present), 0 if it is unset (Index is absent). J1C(Rc_word, PJ1Array, Index1, Index2); // Judy1Count() Count the number of indexes present in the Judy1 array PJ1Array between Index1 and Index2 (inclusive). Return Rc_word set to the count. A return Value of 0 can be valid as a count, or it can indicate a special case for fully populated array (32-bit machines only). See Judy1Count() for ways to resolve this. To count all indexes present (population) in a Judy1 bit array, use: J1C(Rc_word, PJ1Array, 0, -1); Note: The -1 promotes to the maximum index, that is, all ones. J1BC(Rc_int, PJ1Array, Nth, Index); // Judy1ByCount() Locate the Nth index that is present in the Judy1 array PJ1Array (Nth = 1 returns the first index present). To refer to the last index in a fully populated array (all indexes present, which is rare), use Nth = 0. Return Rc_int set to 1 and Index set to the Nth index if found, otherwise return Rc_int set to 0 (the Value of Index con- tains no useful information). J1FA(Rc_word, PJ1Array); // Judy1FreeArray() Free the entire Judy1 array PJ1Array (much faster than using a J1N(), J1U() loop). Return Rc_word set to the number of bytes freed, and PJ1Array set to NULL. J1MU(Rc_word, PJ1Array); // Judy1MemUsed() Return Rc_word set to the number of bytes of memory currently in use by Judy1 array PJ1Array. This is a very fast routine, and may be used after a J1S() or J1U() call with little performance impact. Judy1 Search Functions The Judy1 search functions allow you to search for set or unset bits in the array. You may search inclusively or exclu- sively, in either forward or reverse directions. All of the search functions use a similar calling sequence. Rc_int is returned set to 1 for a successful search and the found Index is returned. Rc_int is returned set to 0 for an unsuccessful search, and Index contains no useful information. The return code Rc_int must be checked prior to using the returned Index, since a search failure is possible. J1F(Rc_int, PJ1Array, Index); // Judy1First() Search (inclusive) for the first index present that is equal to or greater than the passed Index. (Start with Index = 0 to find the first index in the array.) J1F() is typically used to begin a sorted-order scan of the indexes present in a Judy1 array. J1N(Rc_int, PJ1Array, Index); // Judy1Next() Search (exclusive) for the next index present that is greater than the passed Index. J1N() is typically used to continue a sorted-order scan of the indexes present in a Judy1 array, or to locate a "neighbor" of a given index. J1L(Rc_int, PJ1Array, Index); // Judy1Last() Search (inclusive) for the last index present that is equal to or less than the passed Index. (Start with Index = -1, that is, all ones, to find the last index in the array.) J1L() is typically used to begin a reverse-sorted-order scan of the indexes present in a Judy1 array. J1P(Rc_int, PJ1Array, Index); // Judy1Prev() Search (exclusive) for the previous index present that is less than the passed Index. J1P() is typically used to continue a reverse-sorted-order scan of the indexes present in a Judy1 array, or to locate a "neighbor" of a given index. J1FE(Rc_int, PJ1Array, Index); // Judy1FirstEmpty() Search (inclusive) for the first absent index that is equal to or greater than the passed Index. (Start with Index = 0 to find the first index absent in the array.) J1NE(Rc_int, PJ1Array, Index); // Judy1NextEmpty() Search (exclusive) for the next absent index that is greater than the passed Index. J1LE(Rc_int, PJ1Array, Index); // Judy1LastEmpty() Search (inclusive) for the last absent index that is equal to or less than the passed Index. (Start with Index = -1 to find the last index absent in the array.) J1PE(Rc_int, PJ1Array, Index); // Judy1PrevEmpty() Search (exclusive) for the previous absent index that is less than the passed Index. ERRORS
: See: Judy_3.htm#ERRORS EXAMPLE
In the following example, errors in the J1S() or J1U() calls go to a user-defined procedure, process_malloc_failure. This is not needed when you use the default JUDYERROR() macro, since the default causes your program to exit on all failures, including malloc() failure. #include <stdio.h> #include <Judy.h> int main() // Example program of Judy1 macro APIs { Word_t Index; // index (or key) Word_t Rcount; // count of indexes (or bits set) Word_t Rc_word; // full word return value int Rc_int; // boolean values returned (0 or 1) Pvoid_t PJ1Array = (Pvoid_t) NULL; // initialize Judy1 array Index = 123456; J1S(Rc_int, J1Array, Index); // set bit at 123456 if (Rc_int == JERR) goto process_malloc_failure; if (Rc_int == 1) printf("OK - bit successfully set at %lu ", Index); if (Rc_int == 0) printf("BUG - bit already set at %lu ", Index); Index = 654321; J1T(Rc_int, J1Array, Index); // test if bit set at 654321 if (Rc_int == 1) printf("BUG - set bit at %lu ", Index); if (Rc_int == 0) printf("OK - bit not set at %lu ", Index); J1C(Rcount, J1Array, 0, -1); // count all bits set in array printf("%lu bits set in Judy1 array ", Rcount); Index = 0; J1F(Rc_int, J1Array, Index); // find first bit set in array if (Rc_int == 1) printf("OK - first bit set is at %lu ", Index); if (Rc_int == 0) printf("BUG - no bits set in array "); J1MU(Rc_word, J1Array); // how much memory was used? printf("%lu Indexes used %lu bytes of memory ", Rcount, Rc_word); Index = 123456; J1U(Rc_int, J1Array, Index); // unset bit at 123456 if (Rc_int == JERR) goto process_malloc_failure; if (Rc_int == 1) printf("OK - bit successfully unset at %lu ", Index); if (Rc_int == 0) printf("BUG - bit was not set at %lu ", Index); return(0); } AUTHOR
Judy was invented by Doug Baskins and implemented by Hewlett-Packard. SEE ALSO
Judy(3), JudyL(3), JudySL(3), JudyHS(3), malloc(), the Judy website, http://judy.sourceforge.net, for more information and Application Notes. Judy1(3)
All times are GMT -4. The time now is 11:08 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy