How to get a group when matching regex?

Why these code throw an IllegalStateException:
Pattern pattern = Pattern.compile("(a(b)?)");
          Matcher matcher = pattern.matcher("aba");
          System.out.println(matcher.groupCount());       //output: 2
          System.out.println(matcher.group(0));

You need to do a matcher.matches() or a matcher.find() before getting the content of the groups. The groups are numbered 1,2,3 etc with group 0 being the whole of the match. Check the javadoc.

Similar Messages

  • How to Get In & Out of Match, Get your Downloads and Run

    How to Get In & Out of Match, Get your Downloads and Run 
    So you have read the marketing hype, and are thinking what you really want is to pay for the service to upgrade your low quality bitrate files to a bit better 256KBPS rate easily, as don’t fancy rebuying/ reimporting or other method
    This guide should show you the fastest route to achieve you upgrades
    It assumes you’re working from your main music library, and know something about IT, and have <25k of music files
    Backup your music files
    If you know how to do this, its simple right – so once done then move to step 2, if not read below so you don’t blame me for a loss
    Transfer Hardware
    your choice the transfer hardware, suggest offline harddrive via USB3.0 (blue USB connector/eSata/ 1494b/1GB NIC/etcetera but your call
    If you use USB2.0/ 100MB NIC/1394a or other lower transfer method, accept the time hit
    Don’t use Time Backup/local disk backup software unless you have RAID 5 setup or better (and if wondering what that is, you almost certainly don’t then)
    Don’t use  internet backup service unless you live next door to the hosting company, with stunning internet connection to envy 99.9% of the human race, remember this is the fast method folks)
    Transfer Software
    I am assuming you know how to do a copy n paste/ robocoby/xcopy/drag n drop or whatever method turns you on via finder/explorer/cmd window ect
    Caveat #01: If not sure how to do above, then stop now as you are not IT literate ready for this
    Find your music files and back them up
    Now keep the computer running, preferably with nothing else running from this point for ease of use bar an active internet connection, and power saving switched off
    If you know where the files are great, backup the files, but some don’t so for them as below
    Caveat #02: if you don’t know how to find them your most likely on default settings, or sitting with a legacy from a past upgraded machine - below should help but you might want to stop now if you have never been curious about the location before
    Within iTunes , go to [Edit/Preferences/Advanced] and note down the location shown for Itunes Media Location
    In the same location of preferences, hit [Keep iTunes Media Folder organised] and let the application do its stuff.  You will end up with the location in 1ciii a ready to copy location which for simplicity of topic, copy the whole folder and its subfolders.  You may end up with some extra copies of music files (an iTunes safety mechanism, but it won’t show in the folder location, and we can ignore later on)
    Enable Match (after paying for the service)
    Run Match
    Accept that the Apple iTunes process is not perfect, may crash/stop/pause and reboots will be needed, and we can move on so to speak. Key here is you cannot do an unattended script or assume no end user interaction needed L
    Turn on iTunes Match, notice the new ITunes Match on the left hand sidebar, click it, then hit the Start button – if it works and you eventually get to STEP 3 perfect.
    If it fails before getting to STEP 3, reboot and restart
    If this still fails to get to STEP 3, then create a new iTunes database (browse forums on how to do), read your media files from the location in 1civ
    Stop MATCH  (the upload process only, not the service)
    Once STEP 3 starts, CLICK STOP - ASAP, as all this does it upload data, and you don’t want to do this, just get your upgraded files (remember the title of this entry your reading!)
    This also avoids future issues with Album art lost
    Delete Matched low bitrate files
    Create a NEW SMART playlist, with two criteria
    Show all files with bitrate is less then 256
    Show all files where iCloud status is MATCHED
    In the new playlist, click it and it shows the files we want to blow away. 
    Click Edit / Select All then
    Click ctrl in windows/apple  (cmd) logo in mac, and press delete button, ensuring you do NOT tick the delete from iCloud Option.  Now want a few mins for it do do its stuff.
    Download Upgraded BitRate Files
    In the same location as 5, reselect all, and right click, and select the option to download all, and off it goes
    On the lefthand sidebar in iTunes, click Downloads, and you will then see in the middle bottom screen an option for simultaneous downloads (select it)
    Your done Just let the app now do its stuff. I would ignore the message saying you can get on with other things, and use anther machine, preferably not using the same internet connection.
    Optional Steps:
    Click randomly from the Itunes/Matched/256KBPS listed files, and play them.  Not all the files, one every 30 or so, and just the start, then last few seconds to check not dead or corrupt files.
    Update your Step 1 backup with the new files, which is going to take up more space, guess at 40%.
    Kill your iTunes Match account (both the recurring automatic subscription, and  the account if not continuing to use the store part of iTunes)

    bump

  • Xml: how to get node value when pasing node name as a parameter

    Hi,
    I've got some xml:
    var xmlData:XML =
    <1stNode>
        <buttonID>first child node value</buttonID>
        <imageID>second child node value</imageID>
        <labelID>third child node value</labelID>
    </1stNode>
    Then I want to read specific node value based on a value passed to a function. .
    var buttonID = new Button;
    var imageID = new Image;
    var labelID = new Label;
    getNodeValue(buttonID); //the value here is set dynamically
    private function getNodeValue (nodeName:String):void {
    trace (xmlData.nodeName)                      //doesn't work
    var str:String = "xmlData." + nodeName;
    var xml:XMLList = str as XMLList             //doesn't work
    I'm don't know how to get the value when node name is dynamically changed.

    use:
    getNodeValue(buttonID); //the value here is set dynamically
    private function getNodeValue (nodeName:String):void {
    trace (xmlData[nodeName])                    

  • How to get the path when i select a directory or a file in a JTree

    How to get the path when i select a directory or a file in a JTree

    import java.lang.*;
    import java.io.*;
    import javax.swing.*;
    import javax.swing.tree.*;
    import java.awt.HeadlessException;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.Iterator;
    * @author Frederic FOURGEOT
    * @version 1.0
    public class JTreeFolder extends JPanel {
    protected DefaultMutableTreeNode racine;
    JTree tree;
    protected JScrollPane scrollpane;
    final static int MAX_LEVEL = 1; // niveau max de descente "direct" dans l'arborescence
    * Sous-classe FSNode
    * @author Frederic FOURGEOT
    * @version 1.0
    private class FSNode extends DefaultMutableTreeNode {
    File file; // contient le fichier li� au noeud
    * Constructeur non visible
    private FSNode() {
    super();
    * Constructeur par initialisation
    * @param userObject Object
    FSNode(Object userObject) {
    super(userObject);
    * Constructeur par initialisation
    * @param userObject Object
    * @param newFile File
    FSNode(Object userObject, File newFile) {
    super(userObject);
    file = newFile;
    * Definit le fichier lie au noeud
    * @param newFile File
    public void setFile(File newFile) {
    file = newFile;
    * Renvoi le fichier lie au noeud
    * @return File
    public File getFile() {
    return file;
    public JTree getJTree(){
         return tree ;
    * Constructeur
    * @throws HeadlessException
    public JTreeFolder() throws HeadlessException {
    File[] drive;
    tree = new JTree();
    // cr�ation du noeud sup�rieur
    racine = new DefaultMutableTreeNode("Poste de travail");
    // cr�ation d'un noeud pour chaque lecteur
    drive = File.listRoots();
    for (int i = 0 ; i < drive.length ; i++) {
    FSNode node = new FSNode(drive, drive[i]);
    addFolder(drive[i], node); // on descend dans l'arborescence du lecteur jusqu'� MAX_LEVEL
    racine.add(node);
    // Gestion d'evenement sur JTree (on �coute les evenements TreeExpansion)
    tree.addTreeExpansionListener(new TreeExpansionListener() {
    public void treeExpanded(TreeExpansionEvent e) {
    // lorsqu'un noeud est ouvert
    // on descend dans l'arborescence du noeud jusqu'� MAX_LEVEL
    TreePath path = e.getPath();
    FSNode node = (FSNode)path.getLastPathComponent();
    addFolder(node);
    ((DefaultTreeModel)tree.getModel()).reload(node); // on recharche uniquement le noeud
    public void treeCollapsed(TreeExpansionEvent e) {
    // lorsqu'un noeud est referm�
    //RIEN
    // alimentation du JTree
    DefaultTreeModel model = new DefaultTreeModel(racine);
    tree.setModel(model);
         setLayout(null);
    // ajout du JTree au formulaire
    tree.setBounds(0, 0, 240, 290);
    scrollpane = new JScrollPane(tree);
         add(scrollpane);
         scrollpane.setBounds(0, 0, 240, 290);
    * Recuperation des sous-elements d'un repertoire
    * @param driveOrDir
    * @param node
    public void addFolder(File driveOrDir, DefaultMutableTreeNode node) {
    setCursor(new Cursor(3)); // WAIT_CURSOR est DEPRECATED
    addFolder(driveOrDir, node, 0);
    setCursor(new Cursor(0)); // DEFAULT_CURSOR est DEPRECATED
    * Recuperation des sous-elements d'un repertoire
    * (avec niveau pour r�cursivit� et arr�t sur MAX_LEVEL)
    * @param driveOrDir File
    * @param node DefaultMutableTreeNode
    * @param level int
    private void addFolder(File driveOrDir, DefaultMutableTreeNode node, int level) {
    File[] fileList;
    fileList = driveOrDir.listFiles();
    if (fileList != null) {
    sortFiles(fileList); // on tri les elements
    // on ne cherche pas plus loin que le niveau maximal d�finit
    if (level > MAX_LEVEL - 1) {return;}
    // pour chaque �l�ment
    try {
    for (int i = 0; i < fileList.length; i++) {
    // en fonction du type d'�l�ment
    if (fileList[i].isDirectory()) {
    // si c'est un r�pertoire on cr�� un nouveau noeud
    FSNode dir = new FSNode(fileList[i].getName(), fileList[i]);
    node.add(dir);
    // on recherche les �l�ments (r�cursivit�)
    addFolder(fileList[i], dir, ++level);
    if (fileList[i].isFile()) {
    // si c'est un fichier on ajoute l'�l�ment au noeud
    node.add(new FSNode(fileList[i].getName(), fileList[i]));
    catch (NullPointerException e) {
    // rien
    * Recuperation des sous-elements d'un noeud
    * @param node
    public void addFolder(FSNode node) {
    setCursor(new Cursor(3)); // WAIT_CURSOR est DEPRECATED
    for (int i = 0 ; i < node.getChildCount() ; i++) {
    addFolder(((FSNode)node.getChildAt(i)).getFile(), (FSNode)node.getChildAt(i));
    setCursor(new Cursor(0)); // DEFAULT_CURSOR est DEPRECATED
    * Tri une liste de fichier
    * @param listFile
    public void sortFiles(File[] listFile) {
    triRapide(listFile, 0, listFile.length - 1);
    * QuickSort : Partition
    * @param listFile
    * @param deb
    * @param fin
    * @return
    private int partition(File[] listFile, int deb, int fin) {
    int compt = deb;
    File pivot = listFile[deb];
    int i = deb - 1;
    int j = fin + 1;
    while (true) {
    do {
    j--;
    } while (listFile[j].getName().compareToIgnoreCase(pivot.getName()) > 0);
    do {
    i++;
    } while (listFile[i].getName().compareToIgnoreCase(pivot.getName()) < 0);
    if (i < j) {
    echanger(listFile, i, j);
    } else {
    return j;
    * Tri rapide : quick sort
    * @param listFile
    * @param deb
    * @param fin
    private void triRapide(File[] listFile, int deb, int fin) {
    if (deb < fin) {
    int positionPivot = partition(listFile, deb, fin);
    triRapide(listFile, deb, positionPivot);
    triRapide(listFile, positionPivot + 1, fin);
    * QuickSort : echanger
    * @param listFile
    * @param posa
    * @param posb
    private void echanger(File[] listFile, int posa, int posb) {
    File tmpFile = listFile[posa];
    listFile[posa] = listFile[posb];
    listFile[posb] = tmpFile;

  • I cannot see my Iphone 4 in my device window in the finder anymore.  It use to appear so I could copy the camera pictures off of it and transfer them to other folders.  Does anyone have and idea how to get it back when you plug it in initially.  Thanks

    I cannot see my Iphone 4 in my device window in the finder anymore.  It use to appear so I could copy the camera pictures off of it and transfer them to other folders.  Does anyone have and idea how to get it back when you plug it in initially.  Thanks

    You will want to open iPhoto, go to the iPhoto menu and select Preferences. Under the General tab, next to Connecting camera opens: select iPhoto. Close the preferences and quit iPhoto. Reconnect your iPhone 4. iPhoto should open automatically and offer to import your pictures. Import them and then do what you want with them.
    Best of luck.

  • How to get a confirmation when your email is delivered or read  ?

    With Mail app ,How to get a confirmation when your email is delivered or read?

    When I send mail with Mail app , there is flying letter pops up. But now I could not see anymore. Do you know how can I active that animation ?
    Thanks for your help

  • How to get the tab when is it pressed?

    I have the following situation:
    I have an array of JTextField inside a scroollpane. The size of my array is nine or ten depends on some rules. But my window show just four JTextField. So I would like to know how to get the event when I press "tab", just to show the others JTextField while I'm pressing "tab". Because I need this event to scrooll down or scrooll up.
    I tried the keylistener, but when I press "tab" any method(keypressed, keyreleased, keytyped) is called.
    I also tried the focuslistener. If this event I could scrooll down or scrooll up, but I couldn't do both!!
    Can somebody help me??
    Thanks anyway!!
    Gin

    JTextField implements Scrollable interface, which provides information to the enclosing container such as JScrollPane.
    Hence when the tab event is fired, you can compute the Rectangle area that should be visible and then call the 'scrollRectToVisible()' method in JTextField. This will inform the JScrollPane to scroll to the rectangle that you mention.
    HTH

  • How to get an email when data got inserted

    Hi All,
    Could you please let me know how to get an email when data got inserted into table by using sql/plsql
    Thanks in adavance

    Could you please let me know how to get an email when data got inserted into table by using sql/plsql
    Well that seems pretty straightforward - write some pl/sql to send you an email when that pl/sql inserts data into a table.
    See this Oracle-base article for an example of sending mail.
    http://www.oracle-base.com/articles/misc/email-from-oracle-plsql.php
    Post what you have tried so far. What part of what you have tried doesn't seem to be working?

  • How to get SharePoint Groups using Javascript in SP2013 ?

    How to get SharePoint Groups using Javascript in SP2013 , not JSOM please

    Here is the code that worked for me:
    <script type="text/javascript">
    var requestUri = _spPageContextInfo.webAbsoluteUrl + "/_api/web/sitegroups";
      var requestHeaders = { "accept" : "application/json;odata=verbose" };
      $.ajax({
        url : requestUri,
        contentType : "application/json;odata=verbose",
        headers : requestHeaders,
        success : onSuccess,
        error : onError
      function onSuccess(data, request){
    var s='';
     for (var i = 0; i < data.d.results.length; i++)
    s +=data.d.results[i].LoginName+'\n';
        alert(s);
     function onError(error) {
        alert("error");
    </script>

  • How to get the group key, which an approval task assign to

    Hi,
    When a user is assign to OIM Group (i.e. from User Detail >> Group Membership form), I will call an approval process (using Access Policy).
    In that approval process, I have defined two tasks.
    1) Assign Approval to Group -> NOT conditional
    2) Remove OIM Group From User -> conditional
    So, from the 1) task, I will assign this approval to a OIM Group.
    If the user click "Approva", a provisioning process will be fired.
    If the user click "Deny" (Reject), 2) task will be run.
    What I want is this.
    From this 2) task, I need to get the "OIM Approval group" key or name (which this approval is assigned to)......
    Note: I need to get this group info in the "Approval Process Task" -> "Integration" -> "Map"
    Regards,
    Chaturanga

    Hi,
    Yes. I have done that.
    Now what I want is this. If the approver "Deny" (Reject) the approval task, I will call another task in the approval process. From that task, I need to run a code, which remove the user from OIM Group.
    So, to do it, I have written a java code and created a adapter. So, as a input parameter for that code, I need to give the approval group name(i.e. the OIM group, above approval task is assign to).
    How can I get the OIM approval group, which the person who Deny the approval belongs to, from this new approval process task???
    Regards,
    Chaturanga

  • How to Get checkbox value when List value changed in classic report

    hi ,
    i worked with apex 4.2 and i create normal classic report with one checkbox column and one column change it to select list(named loved) now i want when user change list
    take value of checkbox item and show it in message .
    SQL for report
    SELECT
    '<INPUT TYPE="checkbox" NAME="f01" VALUE="'
    ||SEQ
    ||'">' SEQ,
    ID,
    DEPT_NO,
    EMP_NAME} i change the column attributes of Dept_NO to Display as Select list of department name (named lov).
    now i want when user change name of department the value of SEQ SHOW IN ALERT MESSAGE
    i create JavaScript on the page
    function test(pThis) {
    var f01_value = $('select[name="f01"]').value;
    alert('#SEQ : '+ f01_value);
    </script>
    I call this javascript function when list change but the value undefined..
    My Question :
    How can get this value Or any value of item in reports
    regards
    Ahmed

    Hi Ahmed,
    >
    i worked with apex 4.2 and i create normal classic report with one checkbox column and one column change it to select list(named loved) now i want when user change list
    take value of checkbox item and show it in message .
    SQL for report
    SELECT
    '<INPUT TYPE="checkbox" NAME="f01" VALUE="'
    ||SEQ
    ||'">' SEQ,
    ID,
    DEPT_NO,
    EMP_NAME} i change the column attributes of Dept_NO to Display as Select list of department name (named lov).
    >
    You should not create checkboxes like this. Either use the APEX_ITEM.CHECKBOX2 API or change the Column Type to Simple Checkbox.
    >
    now i want when user change name of department the value of SEQ SHOW IN ALERT MESSAGE
    i create JavaScript on the page
    function test(pThis) {
    var f01_value = $('select[name="f01"]').value;
    alert('#SEQ : '+ f01_value);
    </script>
    >
    name="f01" returns an array, what you need is single element value.
    Try
    <script type="text/javascript>
    function test(pThis) {
      var f01_value = $v(pThis);
       alert('#SEQ : '+ f01_value);
    </script>
    {code}
    {quote}
    I call this javascript function when list change but the value undefined..
    My Question :
    How can get this value Or any value of item in reports
    {quote}
    Depends in how you are invoking/triggering the change event. Are you using DA or have you written an "onchange" event on the element?
    Cheers,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • How to get swoosh sound when mail gets sent

    How to get the swoosh sound back when mail gets sent?

    I'm talking about my iMac desktop. I have OSX 10.9.5. I used to hear the swoosh sound when I sent an e-mail. Suddenly it's gone, and I can't find out how to get it back. I miss it!

  • How to get the groups info for user

    Hi guys i am new to ALUI..
    i am trying to do some enhancement.
    i want to know how to get the information of the users group and the group details using the IDK API?
    Can sombody share some code?

    Hello,
    You are welcome. Here is one way of get what you want:
    1) get all groups id's
    IPortletContext - >IRemoteSession -> IUserManager - > getCurrentUserGroups() -> int []
    2) get details about group
    IRemoteSession.getObjectManager(ObjectClass.UserGroup ) ->
    cycle over int []: {
    IObjectManager -> querySingleObject(comminity id) -> IObjectQueryRow -> getName()
    Because you are going to use PRC and make SOAP calls to portal don't forget setup WS to pass token to portlet (check WS settings)
    Edited by Bryazgin at 05/29/2008 7:48 PM

  • How to get job grouping by Job in HR moudle

    Dear experts,
    I need to enhancement a field which is Job grouping in PPOSE. I have add this field in screen. but i don't know how to get the value by Job.
    which table can i use?
    Please reference the details in the attached  for new screen.

    Hi
    I think you can ou HRP1000 to get the job n job family.
    Like You have a job number 40000001 , you go in HRP1000 , choose otype = JF and pass OBJID as 40000001 , this willl give you job family.
    In order to get the text , you can use table HRP1001.
    Regards
    Vaibhav Juneja

  • Can't get all how to get album artwork when all help options didn't work

    help - how do I get album artwork when all itunes help options didn't work

    Other is usually around 1 GB...
    A  ' Large Other ' usually indicates Corrupt Data...
    First Try a Restore from Backup... But... if the Large Other Persists, that is an Indicator of Corrupt Data in the Backup... Then a Restore as New is the way to go...
    Details Here  >  http://support.apple.com/kb/HT1414
    More Info about ‘Other’ in this Discussion
    https://discussions.apple.com/message/19958116

Maybe you are looking for

  • My 1st-gen Nano has decided not to connecet...after having it for a year.

    I've got a First Generation iPod Nano, White, 4GB. I got it on December 25th, 2005. I have been using it since and it works fine. I have an iBook G4 that it has been connected to as well. Well, all of a sudden this week, the iPod doesn't want to moun

  • My iPod touch 4th gen won't turn on.  It's fully charged, but it is stuck with a spinning wheel.

    Occasionally it lights up (slowly, with a flash of bright light) to the apple screen, and then reverts to the wheel. I've tried pressing the home and power buttons for 20 seconds, which won't work.  It does connect to iTunes, and I'm trying to restor

  • How Do I Create This?

    Newbie to FCPX (also have Motion 5). I need instruction, step-by-step, on how to create text on transparent overlay and position it in specific location on screen just like the attached image -- either in FCPX and/or Motion 5. Should be an easy answe

  • Searching LOV is not invoking any method

    Hello JHeadstart team: I have the following behaviour with my LOVs generated from JHeadstart (10.1.2) The "Go" button seems to not invoke anything, just give back the same page, not doing any filter. By watching the log window in JDeveloper, seems li

  • Embedding YT vid in responsive layout?

    Hey DW'ers This is my first stab at responsive web design so I went with a template. Tweaking the template is along well (more work to be done for sure), but I'm having trouble getting the YouTube vids to embed. I did a search on these forums using "