Proper wildcard escape

Hi all.
I'm wondering if anyone has solved the problem of having wildcards applied to the parameters portion of the xml publisher screen.
For example, if I have a form field (type string) of part# I want the user to be able to enter something like %FLEX% (very much like you would in a standard query).
Now, if I build my own page that captures this information then I can properly escape the % signs in the form field. However, I cannot seem to get the same thing to happen when the form fields that XML publisher presents at the top of the report are used.
Any suggestions?
Dave

Case statements accept only integer values, where '{' would be char, which is convertible to int. Looks like '\{' was escape for VS2003 but g++ doesn't know it? I did lot of coding in VC++ and I don't remember using \{ escape sequence. It isn't anything standard I believe. While with Micro$oft products, anything is possible, just look through their include files or old MFC classes (I mean tons of nonstandart extensions to C/C++ which sometimes don't work even with VC++ compiler) .

Similar Messages

  • How to search for brackets in wildcards?

    Is there any way to search for ALL characters (including punctuation, dashes, and spaces) that are within brackets [ ], including the brackets? For example, after wildcard searching, I would like ALL of  [test1123 abc 7.77]  or [aaa 3_1 abc 7.77] to be highlighted (including the brackets) so that I could make them as conditional text.
    What is the proper wildcard search string that I should enter? Thanks.

    zeedale,
    There is no simple, one-shot solution from within FrameMaker. The Wildcard option does not give you a full-fledged regular expression search engine, although that would be nice. The official explanation of wildcard character options is here:
    http://help.adobe.com/en_US/FrameMaker/9.0/Using/WSd817046a44e105e21e63e3d11ab7f7862b-7ff6 .html
    One thing could be more precise in the docs: * is for one or more word characters, like | stands for one or more non-word characters.
    To achieve your goal I would suggest to do as follows:
    To find all one-word instances, search for \[*\] - you have to use \[ for each literal [ because the brackerts are special characters as soon as the Wildcard option is selected
    To find two-word instances, search for \[*|*\], etc.
    HTH,
    - Michael

  • Use wildcard in LDAP search with filter and filter args fails

    Hi,
    I'm writing a function that receives the search filter and the filter arguments and returns the attributes of the found entries but I'm having problems when I pass the wildcard '*' as argument. For example I'm looking for cn=* but instead it looks for cn=\2a (searches for cn containing *).
    I'm using the InitialLdapContext function:
    public NamingEnumeration<SearchResult> search(String name,
    String filterExpr,
    Object[] filterArgs,
    SearchControls cons)
    throws NamingException
    The problem occurs in the class com.sun.jndi.toolkit.dir.SearchFilter format method where it replaces the filter place holders with the filter arguments. There it calls getEncodedStringRep to the arguments and that function returns the wildcard '*' escaped.
    Is it supposed to behave like that? I don't have problems using the search function search(String name, String filterExpr,Object[] filterArgs, SearchControls cons) but I'd like to be able to separate the filter and the filter arguments.

    That's a forum artefact, as the boldface should make obvious.
    My point is that you should specify the wildcard in the filter string, not as an argument. See http://download.oracle.com/javase/6/docs/api/javax/naming/directory/DirContext.html#search(javax.naming.Name,%20java.lang.String, java.lang.Object[],%20javax.naming.directory.SearchControls). (The forum will break that link too.) The argument asterisk is being escaped in accordance with what it says there. Or maybe you can escape it yourself as an argument as \0x2a.

  • Not able to retrive the recordset from oracle stored procedure in VC++

    Hi,
    I am trying to retrieve the records from the reference cursor which is an out parameter for an oracle 9i store procedure in VC++ application. But it is giving the record count as -1 always. Meanwhile i am able to get the required output in VB application from the same oracle 9i store procedure .
    Find the code below which i used.
    Thanks,
    Shenba
    //// Oracle Stored Procedure
    <PRE lang=sql>CREATE OR REPLACE
    PROCEDURE GetEmpRS1 (p_recordset1 OUT SYS_REFCURSOR,
    p_recordset2 OUT SYS_REFCURSOR,
    PARAM IN STRING) AS
    BEGIN
    OPEN p_recordset1 FOR
    SELECT RET1
    FROM MYTABLE
    WHERE LOOKUPVALUE > PARAM;
    OPEN p_recordset2 FOR
    SELECT RET2
    FROM MYTABLE
    WHERE LOOKUPVALUE >= PARAM;
    END GetEmpRS1;</PRE>
    ///// VC++ code
    <PRE lang=c++ id=pre1 style="MARGIN-TOP: 0px">ConnectionPtr mpConn;
    _RecordsetPtr pRecordset;
    _CommandPtr pCommand;
    _ParameterPtr pParam1;
    //We will use pParam1 for the sole input parameter.
    //NOTE: We must not append (hence need not create)
    //the REF CURSOR parameters. If your stored proc has
    //normal OUT parameters that are not REF CURSORS, you need
    //to create and append them too. But not the REF CURSOR ones!
    //Hardcoding the value of i/p paramter in this example...
    variantt vt;
    vt.SetString("2");
    m_pConn.CreateInstance (__uuidof (Connection));
    pCommand.CreateInstance (__uuidof (Command));
    //NOTE the "PLSQLRSet=1" part in
    //the connection string. You can either
    //do that or can set the property separately using
    //pCommand->Properties->GetItem("PLSQLRSet")->Value = true;
    //But beware if you are not working with ORACLE, trying to GetItem()
    //a property that does not exist
    //will throw the adErrItemNotFound exception.
    m_pConn->Open (
    bstrt ("Provider=OraOLEDB.Oracle;PLSQLRSet=1;Data Source=XXX"),
    bstrt ("CP"), bstrt ("CP"), adModeUnknown);
    pCommand->ActiveConnection = m_pConn;
    pParam1 = pCommand->CreateParameter( bstrt ("pParam1"),
    adSmallInt,adParamInput, sizeof(int),( VARIANT ) vt);
    pCommand->Parameters->Append(pParam1);
    pRecordset.CreateInstance (__uuidof (Recordset));
    //NOTE: We need to specify the stored procedure name as COMMANDTEXT
    //with proper ODBC escape sequence.
    //If we assign COMMANDTYPE to adCmdStoredProc and COMMANDTEXT
    //to stored procedure name, it will not work in this case.
    //NOTE that in the escape sequence, the number '?'-s correspond to the
    //number of parameters that are NOT REF CURSORS.
    pCommand->CommandText = "{CALL GetEmpRS1(?)}";
    //NOTE the options set for Execute. It did not work with most other
    //combinations. Note that we are using a _RecordsetPtr object
    //to trap the return value of Execute call. That single _RecordsetPtr
    //object will contain ALL the REF CURSOR outputs as adjacent recordsets.
    pRecordset = pCommand->Execute(NULL, NULL,
    adCmdStoredProc | adCmdUnspecified );
    //After this, traverse the pRecordset object to retrieve all
    //the adjacent recordsets. They will be in the order of the
    //REF CURSOR parameters of the stored procedure. In this example,
    //there will be 2 recordsets, as there were 2 REF CURSOR OUT params.
    while( pRecordset !=NULL ) )
    while( !pRecordset->GetadoEOF() )
    //traverse through all the records of current recordset...
    long lngRec = 0;
    pRecordset = pRecordset->NextRecordset((VARIANT *)lngRec);
    //Error handling and cleanup code (like closing recordset/ connection)
    //etc are not shown here.</PRE>

    It can be linked to internal conversion. In some case, the value of internal or extranal value is not the same.
    When you run SE16 (or transaction N), you have in option mode the possibility to use the exit conversion or not.
    Christophe

  • How to using variable in log file name on ODI 10.1.3.5?

    Hi,
    how can i put a my variable into my log file name?
    now I use this syntax --> ExRate_<%=odiRef.getSysDate("MMddyyHHmm")%>.log.
    But I have a variable for example #server, the value = "oracleProd" and i want to put the variable value into my log file name.
    so the result that i want to get is --> ExRate_oracleProd_<%=odiRef.getSysDate("MMddyyHHmm")%>.log
    so how can I apply the variable value to my log file name? I try using odiRef.getSessionVarList(#Month) but it didn't work.
    Thanks.
    Regards,
    chris
    Edited by: 877142 on Aug 3, 2011 9:36 PM

    hi,
    You can by
    ExRate-#server-<%=odiRef.getSysDate("MMddyyHHmm")%>.log
    Note that I have changed the underscores to dashes. This is because ODI will assume that this is a wildcard/escape character.
    Hope this helps!!
    Bos

  • Google Maps URLs get corrupted when inserted into Numbers

    I've noticed that Numbers doesn't like complex Google Maps URLs. Directions between any 2 points should work fine, but if you make a custom path like so:
    http://maps.google.com/maps?f=d&source=sd&saddr=9825Topanga+Canyon+Blvd,+Chatsworth,+CA+91311&daddr=Owensmouth+Ave+to:9451+corbin+av e+to:34.250264,-118.583765+to:Plummer+St+to:Variel+Ave+to:DevonshireSt&hl=en&geocode=Fe-ZCgIdVTXu-CnpxqLmxpzCgDHDDutQPA47UQ%3BFXq1CgIdMEju-A%3BFfB9C gIdlN3u-CmXlkTrcZvCgDER1wGVO-6aVg%3B%3BFaCACgIdU2u-A%3BFQCOCgIdb2ru-A%3BFU65CgIdbkju-A&mra=dpe&mrcr=1&mrsp=3&sz=14&via=1,3,5&sll= 34.251612,-118.583765&sspn=0.056331,0.079479&ie=UTF8&t=h&z=14
    Some of the percent signs (%) get changed to %25 or whatever the proper HTML escape code is.
    The funny thing is, these URLs are still valid Google Maps addresses, but now show different routes, generally in the same neighborhood!
    Does anyone know how to force Numbers to accept a URL as is without modifying it?

    As I explained yesterdays in an other thread, the problem is that you don't use Numbers correctly.
    Inserting an URL as is in a cell is a wrongdoer.
    The correct soluce is the use of the dedicated function : HYPERLINK()
    =HYPERLINK("http://maps.google.com/maps?f=d&source=sd&saddr=9825Topanga+Canyon+Blvd.+Chatsworth.+CA+91311&daddr=Owensmouth+Ave+to:9451+corbin+av e+to:34.250264.-118.583765+to:Plummer+St+to:Variel+Ave+to:DevonshireSt&hl=en&geocode=Fe-ZCgIdVTXu-CnpxqLmxpzCgDHDDutQPA47UQ%3BFXq1CgIdMEju-A%3BFfB9C gIdlN3u-CmXlkTrcZvCgDER1wGVO-6aVg%3B%3BFaCACgIdU2_u-A%3BFQCOCgIdb2ru-A%3BFU65CgI dbkju-A&mra=dpe&mrcr=1&mrsp=3&sz=14&via=1.3.5&sll=34.251612.-118.583765&sspn=0.0 56331.0.079479&ie=UTF8&t=h&z=14","googlemap")
    With this formula all behave flawlessly.
    Yvan KOENIG (VALLAURIS, France) mardi 29 décembre 2009 21:25:49

  • How to escape *and* wildcard expand?

    Hi,
    I have a context index and a web app where users may search. As a matter of fact users may use "-" or "&" when they search for company names, so I have to escape these before passing it on to oracle text.
    I would like to use a wildcard expansion to the right for one special search - but I don't know if I have to escape each special char (replace "-" with "\-", "&" with "\&") or if it is possible to accomplish both goals with "{ }" and "%" - but
    {foo}% results in an error and {foo%} only searches for foo.
    DB is a 10.2.0.1...

    >
    How would I go about escaping the wildcard (*) in a query and have it treated as literal text?
    >
    You don't need to since '*' is not a wildcard except when it is used to specify 'all columns' in a select query.
    Perhaps you are using 'wildcard characters' to refer to the pattern matching characters '_' and '%' used in 'LIKE' clauses.
    These can be escaped in the LIKE clause by specifying using the ESCAPE clause
    See LIKE Condition in the SQL Language Reference
    http://docs.oracle.com/cd/B28359_01/server.111/b28286/conditions007.htm

  • Index, add all, proper name

    I am creating index entries including a large number of proper names, and I want to Add All so that every occurrence of the name is indexed, but by last name.
    I see the shortcut to create an index entry for a proper name, but in order to "Add All" I need to use the Index Panel.
    To Add All for a proper name and have it appear in the index sorted by last name, I would use the Index Panel and then type the last name in the "Sort By" box (Ex.: for "John Doe" I would type "Doe" in the "Sort By" box). Right?

    I don't think a single GREP could do it, which leads to another problem: how to prevent successive grep replaces from working again on an already reordered name?
    Try something like this. Select the entire index; set the text colour to "Red". Then do as much as possible with GREP, and do the remaining by hand. The GREP Search should specify "Red" text, the replace should set the colour back to "Black".
    Likeable GREP expressions are:
    Search: (\u\l+) (\u\l+); replace with $2, $1. That'll take care of all "John Doe" to "Doe, John"
    Search: (\u\l+ \u\.) (\u\l+); replace with $2, $1. That'll pick up "John A. Doe" to "Doe, John A."
    Search: (\u\l+ \u\l+) (\u\l+); replace with $2, $1, changes all "John Allen Doe" to "Doe, John Allen" -- but for compound surnames ("Matt Le Blanc") you'll have to double-check...
    Search: (\u\l+) (\u\l+\u\l+), replace with $2, $1, to alter "John McDoe" to "McDoe, John".
    (I can combine all of the above into a single GREP, but for clarity I've restrained myself :-) -- besides, you probably need more than one S/R run anyway. Hence the colour trick.)
    For slight variations, all you have use are these basic GREP wildcards: \u for uppercase character, \l for lowercase, '+' for one or more (hence "\u\l+" -- an uppercase followed by any positive number of lowercase). The period is a GREP wildcard, so it has to be escaped as "\.", and the parentheses define Replace groups (the $1, $2 in the replace; I put them around as "$2, $1" to switch first/last name).
    The remaining should hopefully be exceptions to these simple rules, and probably could easy be done by hand, as they stand out in red.
    >I will need to create one index entry for "Doe, John" which also identifies page numbers for "John Doe," "John A. Doe," etc., as well as a different index entry for "Mrs. John A. Doe," "Mrs. John Doe" and "Mary Doe" and the like
    That's a bigger problem, actually. The page numbers for the variations of "John [X.] Doe" will all appear as individual entries in the index. They would have to be added
    i all in the same way
    as an index entry for ID to see they're the same. Perhaps you could first generate the index, look up strays, such as one entry for "J. Doe" and one for "John Doe", and correct these in the text. Only when the index entries are okay, do the final index cleanup. And hope the text doesn't get revised.

  • Can't print to Ricoh Laser AP2600 even after proper driver installed. Help?

    Have a Ricoh Laser AP2600, and a new MacBook Pro with 10.6.3.
    Connected the two with an Ethernet cable (the same Ethernet cable I've used successfully for years with this same printer -- it's the right cable). Turned printer on; "Ready to Print" it says.
    At first just tried printing without making any downloads or installations, a simple TextEdit document, using the default "Generic Postscript Printer" as the selected printer "driver." Nothing happens -- the computer does not even seem to "recognize" that a printer is connected. Get the message "Connecting to printer..." and then "Unable to connect to printer; will retry in 30 seconds....", and it never succeeds.
    Then I searched on the computer for a Ricoh Laser AP2600 driver that may have come with the 10.6.3 install: no such luck.
    Then I found the page at the Ricoh site that supposedly has the proper driver:
    http://support.ricoh.com/bb/html/drute/ra/model/p26a/p26aen.htm#MacOS%20X%2010.6
    "MacOS X 10.6 PPD Installer Ver.1.3.0 24/04/2008"
    Downloaded it, ran the installer, it was installed.
    Went to the "Print and Fax" section of the System Preferences, then added the printer to the printer list by finding its IP address and manually entering it. Succeeded. Proper printer with an icon that looks exactly like my Ricoh Laser AP2600 added to the printer list. Selected it as my default printer. Closed Print SysPref dialog box.
    Went back to random TextEdit document, tried printing again. My Ricoh Laser AP2600 appeared as the chosen printer, as hoped, and then I hit "Print," and the Printing Queue window opened. But once again, it was unable to connect to the printer.
    Went back to the System Preferences printing pane, the Ricoh is listed on the left and has a green dot next to it, which supposedly indicates that it is OK and ready to print.
    I went to Finder and the Library/Printers/PPDs/Contents/Resources to insure that the Ricoh Laser AP2600 PPD was there. It was definitely there, along with all alternate nearby variations ("AP2600 PS," "Aficio AP2600," etc.).
    Tried printing again. No luck. Tried turning off printer and waiting for a few minutes, unplugged the cable, then turning it back on, replugging back in, printing again, no luck. Tried the same after re-choosing the generic printer driver, no luck. Tried the other kind of generic printer driver, no luck.
    Help! This printer works GREAT when it works, and I don't want to have to buy a new one. It worked perfectly fine (and continues to work perfectly fine) when I connect to it with my old PowerBook running 10.4.11. Nothing's wrong with the printer, nor with my MacBook Pro -- all that is missing apparently is the right software or drivers or whatever to make it work.
    Any suggestions?

    Hooray!
    Using your instructions, I finally got the computer to recognize and "ping" the existence of the printer. Once I got that far, it was easy enough to do what was my original goal, to set up a "printer" in the System Preference "Print & Fax" pane and successfully print a document, which I did.
    One of the glitch-y final difficulties was that the printer has no way to make any IP address with fewer than 3 digits per field, so that I can't actually make it have the address "14.22.33.44," but rather it must necessarily be "014.022.033.044." While that may seem like a completely unimportant and dismissable detail to an expert such as yourself, to a networking newbie like me it throws one final dilemma in my way: Are the zeros "ignorable" or are they an essential part of the printer's IP? I tried setting the computer's IP with and without the zeros, and then pinging the printer with and without the zeros, and finally on the last configuration -- printer itself with zeros, computer without zeros, pinging of printer's IP without zeros -- the ping succeeded. A little counter-intuitive, but who am I to complain?
    So, for the record, to help all the world's Ricoh printer owners out there, assuming this thread will forever be archived: here is a summary of...
    *How to make a Ricoh Laser AP2600 work with a 2010-era Mac running Snow Leopard 10.6.3*:
    Go to Ricoh's "printer driver" Web page at one of these two URLs:
    http://support.ricoh.com/bb/html/drute/ra/model/p26a/p26aen.htm
    or
    http://www.ricoh-usa.com/downloads/downloads.asp?tsn=Ricoh-USA&path=http://suppo rt.ricoh.com/bb/html/drute/rc2/model/p26L/p26Len.htm
    ...and click on "MacOS X 10.6 PPD Installer Ver.1.3.0".
    Once downloaded, run the installer's "package" which will place the necessary Ricoh printer drivers in Finder>Library/Printers/PPDs/Contents/Resources (you can check to make sure, if you want.)
    Turn on the Ricoh, connect it to your Mac with an Ethernet cable. On the Ricoh's little display/button area, press "Menu" and then using the "Up" and "Down" arrows buttons and the "Enter" and "Escape" buttons, scroll through its menus like so: Menu/Host Interface/Network Setup/IP Address until you find the IP address, which likely will be listed as 011.022.033.044. You can leave it as that or change it to anything else you want. But then go to Menu/Host Interface/Network Setup/(etc.) and scroll through the other options: Change "Subnet Mask" to 255.255.255.000, but make sure to leave all the other settings at 000.000.000.000. Escape back to the "Ready" state.
    Turn of the Ricoh, wait a bit, and turn it back on, and scroll back to the IP Address and Subnet Mask to make sure the settings were "remembered." If they weren't for some reason, try again.
    Then, on your Mac, go to "System Preferences> Network", click on "Ethernet" on the left column, and in the drop-down menu "Configure IPv4" choose "Manually." Then in the "IP Address" field type in whatever IP address you entered for the printer *but make the final number one digit higher*. Also, *leave off any initial zeros*. Thus, if you left the printer's IP at 011.022.033.044, then make your computer's IP be 11.22.33.45; and so on for any combination of numbers. In the "Subnet Mask" field, enter 255.255.255.0. Leave all the other fields blank. Click "Apply."
    Then go to "Applications>Utilities>Network Utility," open the program, make sure the Ethernet cable is plugged in and the printer is on and the green "Ready" light is illuminated, and click on "Network Utility" "Ping" pane, and enter as the address to Ping your printer's IP address *lacking the initial zeros.* Thus, in our example, enter 11.22.33.44. Click the "Ping" button, and if the program shows pinging happening and a "0% packet loss," then you're connected. If not, go back to the beginning and try again, double-checking each step.
    Once you have pinged successfully and are connected, go to System Preferences>Print & Fax, click on the "+" symbol under the list of printers to add a new printer. In the "Add Printer" window that pops up, leave it on "Line Printer Daemon - LPD" Protocol, and enter in to the "Address" line your printer's IP address, *leaving off any initial zeros*.
    If the "Print Using" menu automatically detects and chooses "Ricoh Laser AP2600 PS" as the printer driver, then you're set to go; if not, and it remains on "Generic Postscript Printer Driver" or something similar, then in the drop-down menu choose "Select Printer Software" and scroll to near the bottom and choose the proper printer driver, presumably "Ricoh Laser AP2600 PS" (or whatever your exact model is). "Name" it whatever you want. Leave "Queue" and "Location" blank.
    Click "Add" and your printer will appear in the list of printers in the "Print & Fax" panel. In the "Default Printer" drop-down menu, choose your new printer as the default. Close System Preferences.
    That's it! You should be able to print now. Open a document, choose the "Print" command, check to make sure the Ricoh is the chosen printer in the print dialog box, and that everything is plugged in and turned on, then click "Print." Hopefully, the Ricoh will spit out your document in a second or two! If not, go back and go through the steps again. If it worked for me, it should work for you.

  • Issue with escaping characters and php

    Greetings,
    We are working on a web page using php and Oracle. We have troubles dealing with the diferent escaping characters when inserting/retrieving data (magic quotes is on but adding the backslash doesn't help :( ).
    We would like to know the correct way of dealing with those characters ( ' " / /n ...).
    Thank you in advance,
    Sincerely,
    Oriol Nonell

    Do NOT use addslashes/stripslashes to escape your queries. I use this function to do the escaping:
    function escapeSQL($string, $wildcard=false)
    $result = str_replace("'","''",$string);
    if ($wildcard == true) $result = str_replace("%","%%",$result);
    return $result;
    It basically replaces ' with ''.
    If you set $wildcard to false, then '%' is considered to be an actual '%' (for 'like' expressions). If you set it to true, a % is escaped to %% too.

  • Escape sequences

    im new to Java and i am trying to experiment with escape sequences and unicode characters: I have tried this one but I am having trouble
    public class XmasTree
         public static void main(String[]args)
    // to print " mark
              System.out.println("\0022");
    when I compile this error comes up::Tool completed with exit code 3
    when I run it this error messge comes up:: cannot locate client JVM in..."it gives the path of where I have installed JSDK"

    // to print " mark
              System.out.println("\0022");That won't work; unicode escapes are processed before the code is passed to the compiler. What the compiler will see is    System.out.println(""");and that's not proper syntax -- not even code prettyprinter in these forums can handle it properly.
    when I compile this error comes up::Tool completed
    with exit code 3
    when I run it this error messge comes up:: cannot
    locate client JVM in..."it gives the path of where I
    have installed JSDK"If those are the only error messages you get you have misconfigured your development environment. What do you use to write code, Textpad?

  • Wildcards in CTXCAT grammar vs. CONTEXT grammar

    I've got a question about using wildcards in the CONTEXT grammar, when working with a catalog (CTXCAT index). For the application in question, the simpler CTXCAT grammar is almost exactly what I need, but there are a few circumstances in which I want to be able to take advantage of the flexibility of the CONTEXT grammar. I am able to do that using a query template, but when the query in question includes wildcards, I sometimes see behavior that I do not understand. Here's a query that works perfectly when expressed in the CTXCAT grammar:
    SELECT count(*)
    FROM ItemKeywordSearch iks
    WHERE CATSEARCH(iks.ItemKeywords, '403(b)*', null) > 0;
    When I try to restate that same query using the CONTEXT grammar like this:
    SELECT count(*)
    FROM ItemKeywordSearch iks
    WHERE CATSEARCH(iks.ItemKeywords, '<query><textquery grammar="CONTEXT">403(b)%</textquery></query>', null) > 0;
    I get a "DRG-51030: wildcard query expansion resulted in too many terms" error. I'm guessing the issue is related to some interaction between the parentheses characters and the wildcard; I don't see the same error if I remove the parentheses from the query.
    Can anyone help me understand the cause of this issue, and suggest a way I can resolve or work around it?
    Thanks,
    Tim

    I don't know what preference attributes you have set. If you want to search for parentheses, then you should set them as printjoins within a lexer so that they are indexed and you will also need to escape them by placing a \ before each one, so that they are not treated as special characters. You can also set the wildcard_maxterms to the maximum value for your verision in a wordlist. The two queries that use the different grammar may be viewing the search string differently. If one ignores the parentheses tries to search for b% or everything that starts with b then that would expand to a lot of terms very quickly and would cause the error. You can query the dr$token column of your dr$...$i domain index table to see how your data has been tokenized during indexing. Please see the demonstration below.
    SCOTT@orcl_11g> CREATE TABLE ItemKeywordSearch
      2    (ItemKeywords  VARCHAR2 (20))
      3  /
    Table created.
    SCOTT@orcl_11g> INSERT ALL
      2  INTO ItemKeywordSearch VALUES ('403(b)')
      3  INTO ItemKeywordSearch VALUES ('403(b)A')
      4  INTO ItemKeywordSearch VALUES ('403(b)B')
      5  INTO ItemKeywordSearch VALUES ('403(b)C')
      6  INTO ItemKeywordSearch VALUES ('other')
      7  SELECT * FROM DUAL
      8  /
    5 rows created.
    SCOTT@orcl_11g> BEGIN
      2    CTX_DDL.CREATE_PREFERENCE ('your_lexer', 'BASIC_LEXER');
      3    CTX_DDL.SET_ATTRIBUTE ('your_lexer', 'PRINTJOINS', '()');
      4    --
      5    CTX_DDL.CREATE_PREFERENCE ('your_wordlist', 'BASIC_WORDLIST');
      6    CTX_DDL.SET_ATTRIBUTE ('your_wordlist', 'WILDCARD_MAXTERMS', '50000');
      7  END;
      8  /
    PL/SQL procedure successfully completed.
    SCOTT@orcl_11g> CREATE INDEX iks_idx
      2  ON ItemKeywordSearch (ItemKeywords)
      3  INDEXTYPE IS CTXSYS.CTXCAT
      4  PARAMETERS
      5    ('LEXER        your_lexer
      6        WORDLIST  your_wordlist')
      7  /
    Index created.
    SCOTT@orcl_11g> SELECT dr$token FROM dr$iks_idx$i
      2  /
    DR$TOKEN
    403(B)
    403(B)A
    403(B)B
    403(B)C
    OTHER
    SCOTT@orcl_11g> SELECT count(*)
      2  FROM   ItemKeywordSearch iks
      3  WHERE  CATSEARCH
      4             (iks.ItemKeywords,
      5              '403\(b\)*',
      6              null) > 0
      7  /
      COUNT(*)
             4
    SCOTT@orcl_11g> SELECT count(*)
      2  FROM   ItemKeywordSearch iks
      3  WHERE  CATSEARCH
      4             (iks.ItemKeywords,
      5              '<query>
      6              <textquery grammar="CONTEXT">403\(b\)%
      7              </textquery>
      8            </query>',
      9            null) > 0
    10  /
      COUNT(*)
             4
    SCOTT@orcl_11g>

  • Using bracket wildcards in collections

    I'm setting up a collection based on an IP range of 10.18.16.x through 10.18.21.x and am having a time figuring out the proper usage for bracket wildcards. Below is my criteria:
    SMS_G_System_NETWORK_ADAPTER_CONFIGURATION.IPAddress like "10.18.1[6-9].[0-9][0-9][0-9]%" or SMS_G_System_NETWORK_ADAPTER_CONFIGURATION.IPAddress like "10.18.2[0-1].[0-9][0-9][0-9]%"
    This successfully pulls in 10.18.17.x, 10.18.19.x, and 10.18.21.x but fails to collect 10.18.16.x and 10.18.18.x. Any idea as to why it might not be pulling in the latter?

    Changed my criteria to the query below and was successful. 
    SMS_G_System_NETWORK_ADAPTER_CONFIGURATION.IPAddress like "10.18.1[6-9].%" or SMS_G_System_NETWORK_ADAPTER_CONFIGURATION.IPAddress like "10.18.2[0-1].%"

  • Can't perform wildcard searches

    Hello world,
    We're using Portal 3.0.9.8.1 with Patch 1949492 installed. This is on 8.1.7.2.4 SE Database.
    When performing a search, cannot include wildcards. E.g. a search for 'test' returns only the exact word 'test'. It does not return 'testing','tester','test1','detests'.
    This is against what Portal's Own Help file states. Click 'Search Tips' on the 'Advanced Search Page' and you are told the following:
    The % character is interpreted literally, so do not include it as a wildcard. If you enter 100% as your search term, search finds content that contains the text 100%, not 1000 or 10000. Wildcards are automatically added to the beginning and end of your search term, so searching for 100 will automatically return content that contains 1000 and 10000.
    If interMedia is installed and enabled, search automatically uses the stem operator to search for words that have the same linguistic root as the specified word. For example, if you specified the word lift, the search feature will return content that contains the words lift, lifting, lifted, etc.
    Both of these statements are blatantly untrue as it does neither.
    Any thoughts Oracle? Has anyone else managed a wildcard search?
    Frustrated
    Dave

    I've just verified in 3.0.9 and wildcards are applied as specified in the documentation, when Text is not enabled. If your search term is 'test' then the SQL query will have the search term %test%. Literal % signs in your search term are escaped, so that if your search term was test% then the query would be for %test^%% escape ^.
    There are a few things to remember. When searching WITHOUT Intermedia Text enabled the search will only match terms in the title and description of the item.
    When, Intermedia Text is enabled, all of the content will be searched. However, as indicated in the documentation, the stem operator will be used. So if you search for 'test' the query is now a Text contains('$test') type query. The default operator is the '$' stem operator, which match terms that have the same linguistic root. So if your search term is 'test' it should match 'tests' or 'testing' or 'tested'. However, it will not match 'test1'. Please refer to the Intermedia Text documenation for more information on the stem operator and Text searching in general.

  • % _ wildcard character issue?

    Hi,
    can any one help me in correcting the below query,
    i want to search table name starting with FI_
    how to include wild card char when % or _ itself is needed to be
    looked in .
    select * from user_tables where table_name like 'FI_'

    You can define your escape char by setting escape command in the where clause.
    In the given example like 'FI\_%' since we mentioned escape '\' wildcard '_' will be treated as a normal char since it appears after the escape char (\).
    If you have FI_A\_
    the first '_' would react as wildcard and the next '_' would react as normal char
    and hence FIxA_ would be selected where as FIxAx would not be selected.
    Regards,
    S.Muthukumar.

Maybe you are looking for