This is stest3.m in view mode; [Download] [Up]
// Written by Carl Lindberg Copyright (c) 1994 by Carl Lindberg. // Version 1.0. All rights reserved. // // This notice may not be removed from this source code. // // This program is included in the MiscKit by permission from the author // and its use is governed by the MiscKit license, found in the file // "LICENSE.rtf" in the MiscKit distribution. Please refer to that file // for a list of all applicable permissions and restrictions. // #import <appkit/appkit.h> #import "mscarl.h" #define NUMSTRINGS 1 #define NUMSEARCHES 5 char *strs[NUMSTRINGS] = { "abcABCaBC456 HelloabcdHiabc", }; char *srchs[NUMSEARCHES] = { "abc", "ABC", "abcabc", NULL, "c45" }; void main() { int i,j,k,l,m; id str = [MiscString new]; id tmp; for (i=0;i<NUMSTRINGS;i++) { printf("----------------------------------------------\n"); [str setStringValue:strs[i]]; printf("String now is: <%s>\n",strs[i]); for (j=0;j<NUMSEARCHES;j++) { printf("Num of '%s': %d nocase: %d nocase/overlap: %d\n",srchs[j], [str numOf:srchs[j]], [str numOf:srchs[j] caseSensitive:NO], [str numOf:srchs[j] caseSensitive:NO overlap:YES]); printf("Spots of '%s' nocase/overlap:",srchs[j]); for (k=0;(l = [str spotOfStr:srchs[j] occurrenceNum:k caseSensitive:NO overlap:YES]) >=0;k++) printf(" %d",l); printf("\nrSpots of '%s' nocase/overlap:",srchs[j]); for (k=0;(l = [str rspotOfStr:srchs[j] occurrenceNum:k caseSensitive:NO overlap:YES]) >=0;k++) printf(" %d",l); printf("\n"); for (k=-1;k<5;k++) printf("replace %dth '%s' with '[]': '%s'\n", k,srchs[j],[[[str copy] replace:srchs[j] with:"[]" occurrenceNum:k caseSensitive:NO] stringValueAndFree]); for (k=-1;k<5;k++) printf("overlap replace %dth '%s' with '[]': '%s'\n", k,srchs[j],[[[str copy] replace:srchs[j] with:"[]" occurrenceNum:k caseSensitive:NO overlap:YES] stringValueAndFree]); [(tmp = [str copy]) replaceEveryOccurrenceOf:srchs[j] with:"[]"]; printf("replace all '%s' with '[]': %s\n",srchs[j], [tmp stringValueAndFree]); [(tmp = [str copy]) replaceEveryOccurrenceOf:srchs[j] with:"[]" caseSensitive:NO]; printf("nocase replace all '%s' with '[]': %s\n",srchs[j], [tmp stringValueAndFree]); [(tmp = [str copy]) replaceEveryOccurrenceOf:srchs[j] with:"[]" caseSensitive:NO overlap:YES]; printf("nocase/overlap replace all '%s' with '[]': %s\n",srchs[j], [tmp stringValueAndFree]); } } [str free]; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.